2011-07-14 8 views
0

object_listビュー内のいくつかのインスタンスをすばやく変更する必要があります。これは、object_list内の各オブジェクトのフォームを使用してプログレッシブエンハンスメントアップこのような何かを探して:テンプレート内の指定されたインスタンスからモデルフォームをインスタンス化する

<ul> 
{% for column in columns %} 
<li class="{% if not column.is_available %}disabled{% endif %}"> 
    <h3>{{column.pk}}. <a href="/column/{{column.pk}}">{{column.name}}</a></h3> 
    <a href="/column/{{column.pk}}">Registros con esta columna</a> 
    <form action="/column/{{column.pk}}" method="post" class="column_form"> 
    {% csrf_token %} 
    <input type="hidden" name="object_id" value="{{column.pk}}"/> 
    <input type="hidden" name="name" value="{{column.name}}"/> 
    <input type="hidden" name="label" value="{{column.label}}"/> 
    ... 
    {{ column_form.data_type }} 
    <label>geográfico</label><input type="checkbox" name="has_geodata" {% if column.has_geodata %}checked{% endif %}/> 
    <label>disponible</label><input type="checkbox" name="is_available" {% if column.is_available %}checked{% endif %}/> 
    {% if columns.has_geodata %} 
    {{columns_form.geodata_type}}  
    {% endif %} 
    </form> 
</li> 
{% endfor %} 
</ul> 

キャッチは私はそれが各フィールドの適切な値を持つようにテンプレートのforループにフォームクラスにオブジェクトのインスタンスを渡すための簡単な方法を持っていないということです。

このシナリオを処理する適切な方法はありますか?

これを何らかのインラインフォームにする必要がありますか?

答えて

0

オブジェクトインスタンスを取り込んで、フォームをコンテキストに追加するか、フォームをレンダリングするテンプレートタグを作成できます。

+0

ビューでこれをやり終え、インスタンス化されたモデルフォームのリストをオブジェクトリストの代わりにテンプレートに渡しました。 – tutuca

+0

あなたはそれが分かってうれしいです。 – Brandon

関連する問題