Короче говоря, я создаю ModelForm, который будет передан в универсальный CreateView.Эта форма позволит пользователю опубликовать событие с указанием местоположения.Я уже собрал базовый адрес пользователя в своей форме создания пользователя, и в моей модели события есть чужой ключ к автору события.
Я хотел бы отобразить город и штат текущего пользователя, вошедшего в систему, какзначение по умолчанию в форме создания события.Так как значения по умолчанию установлены на уровне модели, я не могу использовать структуру запросов.Такие решения, как , это предлагают способ сохранения информации из запроса в базу данных при отправке, но я хотел бы отобразить это значение по умолчанию, когда пользователь впервые переходит на страницу формы.Как мне добиться этой функциональности?
Редактировать Я хотел бы иметь возможность передать начальный параметр, как в в этом сообщении , но динамически определять его в соответствии с текущим протоколированиему пользователя.
Вот основная часть модели.Обратите внимание, что BusinessUser имеет поля города и штата.
class Job(models.Model):
author = models.ForeignKey(BusinessUser, on_delete = models.CASCADE)
location = models.CharField(max_length=200, blank=True, help_text="If different from the location listed on your company profile.")
И вот пока что это представление:
class JobCreation(LoginRequiredMixin, SuccessMessageMixin, generic.edit.CreateView):
model = Job
form_class = JobCreationForm
context_object_name = 'job'
success_url = reverse_lazy('jobs:business_profile')
success_message = 'New job posted!'
def form_valid(self, form):
form.instance.author = self.request.user
return super().form_valid(form)
JobCreationForm - это работа, над которой я застрял.На данный момент это ModelForm, предоставляющий модель и поля.
class JobCreationForm(ModelForm):
class Meta:
model = Job
fields = (
'job_title',
'location',
)