[英]Creating Django model instance on form submission
我正在嘗試在我的項目中創建一個“統計”應用程序,以跟蹤我的網站生成的所有潛在客戶。 當用戶提交“請求信息”表格時,會自動向與該產品關聯的企業發送一條消息。 同時,我希望在Stats應用程序(然后我們正在使用的其他應用程序)的一個模型中創建一個模型實例。 統計信息在后台運行,僅收集某些事物的信息視圖模型實例。 這是代碼細分:
風景:
def ListingView(request,name_initials,l_slug):
listing = get_object_or_404(Listing,l_slug=l_slug)
images = ListingImage.objects.filter(property=listing)
form = ContactPropertyForm(request.POST or None)
context = {
'listing':listing,
'images':images,
'form':form,
}
if form.is_valid():
name = form.cleaned_data.get('name')
phone = form.cleaned_data.get('phone')
email = form.cleaned_data.get('email')
party_size = form.cleaned_data.get('party_size')
form_message = form.cleaned_data.get('message')
listing_address = listing.address
message = name + " " + phone + " " + email + " " + party_size + " " + listing_address
to_email = ['email here']
html_message = "<b>Name: </b>" + name + "<br>" + "<b>Phone: </b>" + phone + "<br>" + "<b>Email: </b>" + email + "<br>" + "<b>Group Size: </b>" + party_size + "<br>" + "<b>Property: </b>" + listing_address
send_mail('New Lead', message, 'from email', ['To email'], fail_silently=False, html_message=html_message)
Leads.add(lead)
lead = Leads.objects.create(
listing = listing_address,
company = listing.l_company,
)
return render(request,'listings/single_listing.html',context)
具體來說,這就是我們正在處理的工作:
Leads.add(lead)
lead = Leads.objects.create(
listing = listing_address,
company = listing.l_company,
)
提交表單時,我也收到此錯誤:
AttributeError at /tu/diamond-green-apartments
type object 'Leads' has no attribute 'add'
也許我不打算在單獨的應用程序模型中正確添加模型實例?
旁注:就上下文而言,我將它改編自先前從事的另一個項目,它是通知系統的一部分。 原來是這樣的:
if user.is_authenticated():
if user in obj.likes.all():
obj.likes.remove(user)
else:
obj.likes.add(user)
notification = UserNotification.objects.create(
fromUser = self.request.user,
toUser = obj.author,
post = obj,
notify_type = "like",
)
Django add
方法僅用於將實例添加到多對一或多對多相關對象集中。 如果您不需要Leads.add(lead)
則可以毫無問題地刪除它,此行將添加新的Lead對象本身:
lead = Leads.objects.create(
listing = listing_address,
company = listing.l_company,
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.