好吧,我正在工作的一个小团队对django和开发webapp来说是个新项目,突然间我们就失去了向数据库添加模型对象的能力。我们都不知所措。下面是我们目前正在调试的地方。在
在视图.py在
def postOp(request):
if request.method == 'POST':
operation = request.POST.get("operation","noop")
#Registered user operations
if request.user.is_authenticated():
username = request.session.get("member","Guest")
user = ToolUser.objects.get(name=username)
zipcode = user.location
.
.
#AddTool
if operation == "addTool":
toolName = request.POST.get("toolName","N/A")
toolDesc = request.POST.get("toolDesc","N/A")
print("In addtools")
user.submitTool(toolName, toolDesc)
print("SUBITTED")
return HttpResponseRedirect("tools")
型号
^{pr2}$它似乎一直到达t.save()然后中断。使用一个单独的工具来查看数据库,显然没有保存到表中。但是,对于终端的以下输出,它看起来确实在创建这个实例。在
终端输出:
添加工具
提交中
工具制作:工具测试,2,2,描述,0,12345
编辑:忘记更新这个,发现了问题,结果有一个字段是空的,django拒绝保存具有空字段的内容。在
等等,您有一个名为
saveTool()
的模型函数,但您调用的是user.savetool
(我假设是django.contrib.auth.user
)?如果你说解决了,那就好了。在最好将对象填充到
postOp()
函数中并保存在那里。如果saveTool()
确实是model类的一部分,那么您将实例化一个模型对象,然后调用一个方法来实例化另一个函数。在我的观点是,从样式的角度来看,代码是不必要的复杂的,或者这需要更多的数据来真正了解那里发生了什么。在
相关问题 更多 >
编程相关推荐