Используя django, у меня есть форма, в которой пользователь вводит свой 'position'
.Пользователь может добавить несколько позиций.Пользователь также может удалять позиции.При этом следует отметить две вещи:
1) в форме есть две кнопки: 'Add'
и 'Delete'
.
2) Я использую цикл for вшаблон для заполнения списка позиций и кнопок удаления.
Это то, что у меня сейчас есть:
# in template
<tr>
<td>Position</td>
<td>{{ form.position }}
<input type="submit" value="Add" , name='action'/>
</td>
</tr>
<tr>
<td> </td>
<td>
{% for position in positions %}
{{ position}}
<input type="submit" value="Delete {{position }}", name='action'/>
{% endfor %}
</td>
</tr>
# in views.py
...
if action == 'Add':
positions.append(request.POST['position'])
return render_to_response(...)
if 'Delete' in action:
positions.remove(request.POST['action'][7:])
return render_to_response('...)
Это выглядит как очень не элегантный способ выполнить часть «Удаление».
Есть ли лучший способ получить значение position
, без необходимости вводить дополнительную информацию в 'Delete' submit button
, а затем разрезать ее, чтобы получить ее значение?