0

各コンテストが連続して表示されるページがあります。各行には、コンテスト ID と、コンテストへの外部キーを持つ他のモデル名へのリンクが含まれています。ニュースモデルのように:

class News(models.Model):
    title = models.CharField(max_length=50, null=True)
    description = models.TextField()
    time = models.TimeField( default= datetime.datetime.now().time())
    contest = models.ForeignKey(Contest)

これらのモデルを追加および変更するために admin を使用したいと考えています。コンテストID=1への外部キーを持つ「ニュース」をクリックすると、外部キーのこの値を持つニュースのリストのみが表示されます。だから私は使う

{% for instance in instances %}
                    <tr class="{% cycle 'row1' 'row2' %}">
                        <td>{{ instance.title }}</td>
                        <td>{{ instance.startTime }}</td>
                        <td>{{ instance.timeSpan }}</td>
                        <td>{{ instance.date }}</td>                      
                        <td><a href="/admin/ContestManagement/news/?contest__id__exact={{ instance.id }}">News</a></td>                       
                {% endfor %}

このリンクをクリックすると、この特別なコンテスト ID を持つニュースのリストが表示されます。このテンプレート (コンテスト ID でフィルタリングされた change_list) でどのように理解できるか知りたいのですが、このコンテスト ID にニュースを追加するには、このページにどのコンテスト ID があり、何をすればよいですか? (現在の URL は次のとおりです: /admin/ContestManagement/news/add/ テンプレートで<code>ここに画像の説明を入力</code> 試し{{request}}ましたが、空でした!! 助けてくれてありがとう

4

1 に答える 1

1

{{request}}が空の場合、settings.py の TEMPLATE_CONTEXT_PROCESSORS に django.core.context_processors.request を追加する必要あります

参照: https://docs.djangoproject.com/en/dev/ref/templates/api/#django-core-context-processors-request

于 2013-03-13T09:15:52.810 に答える