Определить в поле формы пользователя при загрузке страницы
Необходимо определить в поле формы пользователя при загрузке страницы Пробовал сделать и на фронте
<form action="{% url 'worklist' %}" method="POST">
{% csrf_token %}
<input type="hidden" id="id_username" value="{{User.user}}">
<div class="form-group">
<label for="{{ form.namework.id_for_label }}">Название</label> {{form.namework}}
</div>
<div class="form-group">
<label for="{{ form.datework.id_for_label }}">Дата </label> {{form.datework}}
</div>
<div class="form-group">
<label for="{{ form.timework.id_for_label }}">Время </label> {{form.timework}}
</div>
<div class="form-group">
<label for="{{ form.aboutwork.id_for_label }}">Описание </label> {{form.aboutwork}}
</div>
<div class="form-group">
<label for="{{ form.tagswork.id_for_label }}">Теги </label> {{form.tagswork}}
</div>
<button type="submit" class="btn btn-primary">Добавить дело</button>
</form>
Или добавлять в функцию во вьюхе, не получается и таким способом
def add_work(request):
if request.method == 'POST':
form = WorkForm(request.POST)
if form.is_valid():
form.save(commit = False)
form.username = request.user
form.save()
else :
form = WorkForm()
listtodo = Worklist.objects.all()
context = {
'listtodo': listtodo,
'form': form,
}
return render(request, 'listorg/worklist.html', context)
файл forms.py
class WorkForm(forms.ModelForm):
tagswork = forms.ModelChoiceField(queryset=Tags.objects.all(), empty_label=" Выберите тег ")
class Meta:
model = Worklist
fields = ('namework', 'datework','timework', 'aboutwork', 'tagswork')
widgets = {
"datework": DateInput(attrs={
'class': 'form=control',
'type': 'date',
}),
"timework": TimeInput(attrs={
'class': 'form=control',
'type': 'time',
}),
"aboutwork": Textarea(attrs={
'class': 'form=control',
'rows': 2,
}),
}