Задать вопрос
@huko

Как вывести сразу заполненный formset всех данных из таблицы?

Есть таблица, в ней 10 записей, как вывести заполненный formset всех этих данных с возможностью их редактирования ? Точнее мне не все данные выводить надо, а по определенному признаку, но не суть.
  • Вопрос задан
  • 167 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
@IvanOne
Думаю с формсетами вам поможет разобраться документация https://docs.djangoproject.com/en/1.8/ref/forms/models/

по поводу фильтрации данных в форсетах, примеры - stackoverflow.com/questions/9711313/django-how-to-..., stackoverflow.com/questions/2581049/filter-queryse...

ну и если вы совсем приуныли то пример:
form:
class DatesOperationForm(forms.ModelForm):
    class Meta:
        model = OperationDate

DateFormSet = inlineformset_factory(Operation, OperationDate, extra=1, can_delete=False, form=DatesOperationForm)

view:
class OperationDetail(UpdateView):
    form_class = OperationForm
    

    def get_context_data(self, **kwargs):
        context = super(OperationDetail, self).get_context_data(**kwargs)
        context['form_dates'] = DateFormSet(instance=self.object)
        return context

models:
class Operation(models.Model):
    name = models.CharField(u"Название", max_length=255)
    sum = models.DecimalField(u"Сумма", max_digits=10, decimal_places=2)
    category = models.ForeignKey(CategoryOperation, verbose_name=u"Категория", null=True, blank=True,
                                 related_name='operations')
   ...
class OperationDate(models.Model):
    operation = models.ForeignKey(Operation, verbose_name=u"Опреация")
    ....

Собственно передаете instance Operation в формсет все остальное джанга сделает сама. Ну и если надо колдуете с queryset.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы