Ручная форма Django не сохраняется независимо от того, что я делаю с базой данных Postgres
У меня проблема с сохранением формы в базе данных. Все, что я пробовал, не работает, и я действительно не знаю, что еще можно сделать.
У меня есть ручная форма, созданная в Django, я не получаю абсолютно никаких ошибок при сохранении, все работает отлично без каких-либо ошибок, я даже получаю перенаправление на страницу успеха, и все же у меня нет абсолютно ничего в базе данных.
# urls.py
app_name = 'leads'
urlpatterns = [
path('add-apartment-lead', ApartmentLeadCreateView.as_view(), name='add_apartment_lead'),
]
# views.py
class ApartmentLeadCreateView(LoginRequiredMixin, PermissionRequiredMixin, CreateView):
model = ApartmentLead
form_class = ApartmentLeadCreateForm
template_name = 'leads/apartments/add_apartment_lead.html'
success_url = reverse_lazy('leads:lead_added')
permission_required = 'leads.add_apartmentlead'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
stored_contact = self.request.session.get('storedContactId')
stored_type = self.request.session.get('storedType')
context['storedContactId'] = stored_contact
context['storedType'] = stored_type
return context
def form_valid(self, form):
form.instance.created_at = timezone.now()
form.instance.updated_at = timezone.now()
form.instance.created_by = self.request.user
try:
response = super().form_valid(form)
return response
except Exception as e:
print(f"Eroare în timpul salvării datelor: {e}")
return HttpResponseRedirect(self.get_success_url())
Я также попробовал с {{ form }}, но это все равно не работает. Отмечу, что сначала я выбираю контакт и тип недвижимости на предыдущей странице, где сохраняю эти два элемента в sessionStorage, но дело в том, что вся форма все равно выглядит пустой, как будто у меня на самом деле ничего нет ни в одном поле формы.
html-файл не полный, потому что он слишком длинный, но в нем есть много важных полей, чтобы вы могли понять, о чем идет речь. Полную html-страницу можно посмотреть здесь: https://github.com/dolca/crmSystem/blob/main/templates/leads/apartments/add_apartment_lead.html
Заранее спасибо и я ценю любую помощь!
В вашей модели есть:
class Meta: abstract = True
Если я ничего не упускаю, то лучше это убрать. Если мы посмотрим на документацию django, то там говорится
Эта модель не будет использоваться для создания таблиц базы данных
.
Источник: Abstract Model