2017-08-14 162 views
-1

我尝试使用django视图保存数据库上的数据,但它返回一个错误。如何使用django视图将数据保存在数据库中?

def get_enroll(request, pk): 
 
\t user = request.user 
 
\t users = User.objects.filter(username=user) 
 
\t course = Course.objects.filter(pk=pk) 
 
\t chapter = ChapterModel.objects.filter(course = course) 
 

 
\t abc = Enroll() 
 
\t abc.save_enroll(users, course, chapter) 
 

 
\t template_name = 'dashboard.html' 
 
\t context = {'users':user,'course':course} 
 
\t return render(request, template_name, context)

+0

有什么错误。请在问题 –

回答

1

您可以直接保存,如:

Enroll(user=user, course=course, chapter=chapter).save() 
+0

是的..谢谢队友,但没有工作... – AnkurBelbase

+0

你的用户,课程和章节必须是他们各自的实例,所以获取各自的实例之前,分配为参数 – Nitesh

1

您可以简单地使用:

abc = Enroll.objects.create(users=users, course=course, chapter=chapter) 

既然你还没有提供您的机型,也不是你想怎么的任何逻辑这项工作,我不能给你一个更好的解决方案比这一个。

希望这有助于

+0

中包含错误我试着按照你的建议,但我得到了这个错误.. 无法指定“]>”:“Enroll.course”必须是“Course”实例。 – AnkurBelbase

+0

@AnkurBelbase这个错误本身就说明了,所提供的课程不是课程实例,而是一个'QuerySet'。要解决这个问题,只需使用'course = Course.objects.get(pk = pk)'而不是'.filter()'。希望这会有所帮助,我可以请求你加入并将答案标记为已接受,以便未来的访问者可以更快地解决他们的问题?谢谢! –

相关问题