[英]'str' object has no attribute 'save' Django
class AgentForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
# agents = dashboard_userlink.objects.filter(username__in=Subquery(task_router_calldetail.objects.values('agent').distinct())).values_list('username').annotate(full_name=Concat('first_name', Value(' '),'last_name')).order_by('first_name')
agents = dashboard_userlink.objects.values('username').distinct().values_list('username').annotate(full_name=Concat('first_name', Value(' '),'last_name')).order_by('first_name')
for i in agents:
agent_name = i[0]
agent_value = i[1]
if agent_value == ' ':
agent_value = agent_name
agent_value.save()
agent_list = [('','Select')] + list(agents)
super(AgentForm, self).__init__(*args, **kwargs)
self.fields['agent'] = forms.ChoiceField(
choices=agent_list )
檢查下面的代碼部分
if agent_value == ' ':
agent_value = agent_name
agent_value.save()
您正在使用的agents
變量沒有模型實例(我認為您需要一個模型實例)而只是一個字符串值,因此agent_value.save()
拋出錯誤
在這里您使用的是 values(),它返回字典而不是模型的實例。 您可以使用 save() 來保存實例。 Save 用於將對象保存到數據庫。
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.