django - 如何在 django 中的表单上获取用户名作为初始值
问题描述
我想在以下表单上获取初始值,但出现错误:未定义名称“用户”。我不知道如何获取 user.username。
class InvoiceForm(ModelForm):
date = forms.DateField(widget=DateInput)
company = forms.CharField(initial={"company": user.username})
class Meta:
model = Invoice
fields = "__all__"
创建发票的视图是:
class InvoiceCreate(CreateView):
form_class = InvoiceForm
model = Invoice
template_name = "sales/invoice_form.html"
def get_success_url(self, request):
return reverse_lazy('invoice_details', kwargs={'pk' : self.object.pk})
def get(self, request, *args, **kwargs):
self.object = None
form_class = self.get_form_class()
form = self.get_form(form_class)
formset = InvoiceItemFormSet()
products = list(Product.objects.values())
return self.render_to_response(
self.get_context_data(form=form,formset=formset, products=products))
def post(self, request, *args, **kwargs):
self.object = None
form_class = self.get_form_class()
form = self.get_form(form_class)
formset = InvoiceItemFormSet(self.request.POST)
if (form.is_valid() and formset.is_valid()):
return self.form_valid(form, formset)
else:
return self.form_invalid(form, formset)
def form_valid(self, form, formset):
self.object = form.save()
formset.instance = self.object
formset.save()
try:
addmore = self.request.GET["addmore"]
if addmore == "True":
return redirect("update_invoice", pk=self.object.id)
except Exception as e:
pass
return HttpResponseRedirect(self.get_success_url())
def form_invalid(self, form, formset):
return self.render_to_response(self.get_context_data(form=form, formset=formset))
我想在以下表单上获取初始值,但出现错误:未定义名称“用户”。我不知道如何获取 user.username。
解决方案
推荐阅读
- kubernetes - 如何使用 apiVersion "certificates.k8s.io/v1" 为 webhook 创建 "CertificateSigningRequest"
- php - 消息:count():参数必须是数组或实现 Countable 的对象
- java - JaxB - 嵌套元素值为空
- swift - 从“错误”转换为不相关类型“AuthErrorCode”总是失败
- docker-compose - Pycharm 卡在启动骨架生成器过程中
- c# - Entity Framework Core v.5+ 多对多 fluent api
- ios - 如何减少 UICollection 视图中的垂直间距
- ubuntu - 右键单击弹出菜单在vscode中立即消失
- c# - 哪个是官方 open xml sdk nuget repo:DocumentFormat.OpenXml 或 Open-XML-SDK?
- python - 我无法提取正确的月份和日期?