0

urls.py ファイルの単純な 'django.views.generic.list_detail.object_list' - generic_view を使用して、Web でメニューを作成しました。ユーザーがこのリスト [HttpResponse.set_cookie(...)] のいずれかの要素を選択するたびに Cookie を設定したいと思います。最善の解決策は何ですか?私は views.py に関数を書くべきですか、それとももっと簡単な解決策がありますか?

編集 1

これは私の urls.py のフラグメントです:

manufacturer_dict = {
                        'queryset': Manufacturer.objects.all()

                     }

urlpatterns = patterns('',

    url(r'^$', 'django.views.generic.list_detail.object_list', manufacturer_dict),



)

テンプレート:manufacturer_list.html

<ul>
{% for object in object_list %}
    <li><a href="{{object.get_absolute_url}}" title="{{object.name}}">{{object.name}}</a></li>
{% endfor %}
</ul>

私はgeneric_viewsのみを使用しています。

携帯電話の機種一覧です。ユーザーのモバイル モデルを Cookie に記憶させたい。

4

1 に答える 1

1

ジェネリック ビューは、ビュー ロジックが不要な場合のテンプレートのレンダリングなど、いくつかの一般的なケースを処理する単純なビューです。あなたの場合、ビューに機能を追加する (つまり、Cookie を設定する) 必要があるため、カスタム ビューを作成する必要があります。さらに、urls.py (クエリセット呼び出し) にビュー ロジックを追加しないでください。これは views.py に属します。

したがって、プロセス フローは次のようになります。

1) フォームを使用して、携帯電話のモデルをテンプレートで表示します。

2)ユーザーがドロップダウンメニュー(または同様のもの)から電話モデルを選択すると、電話モデルがviews.pyの関数に送信されます

3) この関数は電話モデルを受け取り、電話モデルを含む Cookie で応答します。

ただし、電話モデルを Cookie に保存する理由がよくわかりません。

于 2010-03-09T14:52:35.053 に答える