0

私は比較的新しいpython/djangoです。私は私のurls.pyを通してIDに送信することに問題があります。私のURLに2つのIDを追加ディスパッチャー

プロジェクトのビジネスプロファイルページに管理者を追加しようとしています。

私のviews.py:私はBUS_IDなどのuser_idを渡すようにしようとしていますが、私は私が私のURLに関連していると仮定しています構文エラーを得続ける私のテンプレートで

@login_required 
def make_admin(request, bus_id, user_id): 
user = request.user 
u = get_object_or_404(User, pk = user_id) 
b = get_object_or_404(Business, pk = bus_id) 
b.admin.add(u) 
followcount = b.followers.count() 
photo = BusinessLogo.objects.all().filter(business_link = bus_id)[:1] 
return render_to_response('business/followers.html', 
        {'user':user, 'b':b, 'followcount':followcount, 'photo':photo, 'u':u}, context_instance=RequestContext(request)) 

マイテンプレート:

... 
{% if follow in b.admin.all %} 
[<a href="{% url remove_admin b.id u.id %}">Remove Admin</a>] 
{% else %} 
[<a href="{% url make_admin b.id u.id %}">Make Admin</a>] 
{% endif %} 
... 

現時点での私のurls.py:

url(r"^make/(?P<bus_id>\d+)/(?P<user_id>\d+)/$", make_admin, name="make_admin"), 
url(r"^remove/(?P<bus_id>\d+)/(?P<user_id>\d+)/$", remove_admin, name="remove_admin"), 

私はちょうど私のURLへのuser_idを追加する方法を考え出す苦労しています。上記の例は動作しません。

みんなありがとう、

スティーブ

EDIT:で示されたエラーImがある:引数を持つ 'remove_admin'「(1L、 '')用のリバース:レンダリング中

キャッチNoReverseMatch 'とキーワード引数' {} 'は見つかりませんでした。

+0

「機能しない」とはどういう意味ですか? –

+0

@Daniel申し訳ありませんが、私の編集をチェック – TheLifeOfSteve

答えて

1

私が間違っていると見ることができる唯一のものは、{% if follow in b.admin.all %}です。投稿したコードの文脈にフォロー変数はありません。

エラーの詳細やスタックトレースを投稿した場合は、最も役立ちます。

EDIT:[OK]を、あなたのエラーが便利です:)レンダリング中NoReverseMatchをキャッチ

:引数を持つ 'remove_admin' '(1L、 ''')とキーワード引数のために{} 'が見つかりません逆にします。

これは、URL反転機能に2つの引数1L''があることを意味します。 1L私はちょうど整数1をPythonの長い整数として表します。''は、Noneまたは空の文字列を渡したことを意味します。

{% url remove_admin b.id u.id %}でテンプレートのURLの反転を呼び出したので、2番目の引数はu.idの値です。 u変数の値をチェックし、有効なid属性を持っていないように見えるので、それはあなたが期待するものはおそらくありません

+0

次は私が別のビューに私は私の答えアドレスあなたが – TheLifeOfSteve

+0

@steveを渡され、FL、のループのために私を通過するのに使用される変数である私はあなたが正しいと信じてええ。最初の管理者がフォロワーのリストを見て管理者を追加できるように、すべてのユーザーのIDを取得しようとしています。私はこのことについて正しいことをしているとは思わない。助言がありますか? –

+0

を投稿エラーメッセージを更新 – TheLifeOfSteve

0

あなたはユーザーオブジェクトを参照していない(私はそれがUserオブジェクトのすべてではありません推測すると思います)コンテキストに渡す方法ではuserとして渡しますが、テンプレートではu.idを使用します。

+0

本当に?ユーザー、b、b、followcount、followcount、 'photo':写真、 'u':u'のように 'user'と 'user' – TheLifeOfSteve

関連する問題