Django Ошибки набора форм: непредвиденный аргумент ключевого слова 'auto_id'; и неудачный поиск для ключа [форма] - PullRequest
0 голосов
/ 17 июня 2020

Я постоянно получаю ошибки при попытке визуализации наборов форм. Я пробовал практически все, но с двумя повторяющимися ошибками:

  1. Когда я использую набор четких форм: VariableDoesNotExist в / real_property Неудачный поиск ключа [form] в [{'True': True, 'False': False, 'None': None}, {}, {}, {'formset':}]

  2. Когда я использую {{formset}}. RealProperty () получил неожиданный аргумент ключевого слова 'auto_id'

Вот мои сокращенные модели models.py:

class RealProperty(models.Model):

auto_increment_id = models.AutoField(primary_key=True)
user = models.ForeignKey(CustomUser, primary_key=False,
                            on_delete=models.CASCADE)
no_real_property = models.BooleanField("No interest in real property",
                                       blank=True)

Вот мои forms.py:

class RealPropertyForm(forms.ModelForm):
class Meta:
    model = RealProperty
    # exclude = ['user']
    fields = ['no_real_property', 'real_property_description',
              'real_property_location', 'real_property_type',
              'real_property_purpose', 'real_property_who_ownership',
              'real_property_ownership_type',
              'real_property_interest', 'real_property_current_value',
              'real_property_secured_claim1_text',
              'real_property_secured_claim1_type',
              'real_property_secured_claim1_amount',
              'real_property_secured_claim2_text',
              'real_property_secured_claim2_type',
              'real_property_secured_claim2_amount',
              'real_property_secured_claim3_text',
              'real_property_secured_claim3_type',
              'real_property_secured_claim3_amount',
              ]


def __init__(self, *args, **kwargs):
    # self.user = kwargs.pop('pass_id')
    super(RealPropertyForm, self).__init__(*args, **kwargs)
    # REAL PROPERTY FORM ATTRIBUTES
    self.fields['real_property_description'].widget.attrs[
        'placeholder'] = 'Provide an easily identifiable name for this ' \
                         'property'
    self.fields['real_property_location'].widget.attrs[
        'placeholder'] = 'Street address, city, state, zip'
    self.fields['real_property_secured_claim1_text'].widget.attrs[
        'placeholder'] = 'Claimant # 1: Name, Address, Phone'
    self.fields['real_property_secured_claim2_text'].widget.attrs[
        'placeholder'] = 'Claimant # 2: Name, Address, Phone'
    self.fields['real_property_secured_claim3_text'].widget.attrs[
        'placeholder'] = 'Claimant # 3: Name, Address, Phone'

    # REAL PROPERTY FORM
    self.helper = FormHelper()
    self.helper.form_method = 'POST'
    self.helper.add_input(Submit('submit', 'Save and Continue'))
    self.helper.layout = Layout( ...

Я сократил свой views.py, просто пытаясь заставить его отобразить:

@login_required(login_url=reverse_lazy('login'))
def real_property_req(request):
RealPropertyFormSet = formset_factory(RealProperty, extra=1)
formset = RealPropertyFormSet()
context={'formset': formset}
return render(request, 'real_property.html', context)

И, наконец, мой html (многое прокомментировано, потому что я пробовал ассортимент возможностей):

    <form action="" method="POST" novalidate>
    {% csrf_token %}
    <fieldset>
        <div>
{#                {{ formset.management_form }}#}
{#                { % for form in formset %}#}
            <!-- <div class="link-formset"> -->
{#                    {%  crispy form %}#}
{#                {%  crispy form form.helper %}#}
            {{ formset }}
            <!-- </div> -->
{#                { % endfor %}#}
        </div>
    </fieldset>
</form>

Traceback, кажется, приводит к этому утверждению как проблема c: return render (request, 'real_property. html', context). Любая помощь в решении этой проблемы будет оценена, поскольку я практически исчерпал все, что знаю, и все ресурсы, которые могут помочь мне с решением в Интернете. Также обратите внимание, что моя модель включает поле автоматического увеличения для идентификатора. Я добавил это только после того, как не смог разрешить ошибку auto_id в качестве теста. Мне это не нужно, но все равно не получилось. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...