Python 将两个不同模型的数据添加到数据库中
我的模特是Python 将两个不同模型的数据添加到数据库中,python,mysql,django,Python,Mysql,Django,我的模特是 class Book(models.Model): book_name=models.CharField(max_length=30) author_name=models.CharField(max_length=30) publisher_name=models.CharField(max_length=40) author=models.ForeignKey(Author) def __unicode__(self):
class Book(models.Model):
book_name=models.CharField(max_length=30)
author_name=models.CharField(max_length=30)
publisher_name=models.CharField(max_length=40)
author=models.ForeignKey(Author)
def __unicode__(self):
..........
class Author(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=40)
email = models.EmailField()
age=models.IntegerField()
def __unicode__(self):
........
def books(self):
return Book.objects.filter(author=self)
我需要从两个不同的模型向数据库中插入数据。我需要views.py示例,因为我使用的代码工作不正常。请帮我做这个。我正在使用Django。我正在使用author作为fireign键,这样应该会自动设置,这也不会发生
def add_author(request):
if request.method == 'POST':
fname = request.POST.get('fname')
lname = request.POST.get('lname')
email = request.POST.get('email')
age = request.POST.get('age')
author = Author(
first_name = fname,
last_name = lname,
email=email,
age=age
)
new_author = author.save()
book = request.POST.get('book')
publisher = request.POST.get('publisher')
fullname = "{0} {1}".format(new_author.first_name,
new_author.last_name)
Book.objects.create(
book_name=book,
author_name=fullname,
publisher_name=publisher
author = new_author
)
return render(request, 'add_author.html')
添加作者.html
<form method="post">
{% csrf_token %}
<h5>Author Info: </h5>
First name: <input type="text" name="fname"><br/>
Last name: <input type="text" name="lname"><br/>
Email: <input type="text" name="email"><br/>
Age: <input type="text" name="age"><br/>
<h5>Book Info: </h5>
Name: <input type="text" name="book"><br/>
Publisher: <input type="text" name="publisher"><br/>
<input type="submit" value="Save">
</form>
{%csrf_令牌%}
作者信息:
名字:
姓氏:
电子邮件:
年龄:
图书信息:
名称:
发布者:
再说一遍,您真正需要什么?向我们进一步解释您需要什么,以便我们能够理解。不要再创建另一个相同的问题。我想使用views.py中的函数将数据(输入数据)添加到数据库中。由于我使用的是两个表,因此无法使用POST方法将数据从Templates添加(更新)到表中。需要views.py获取上述models.py文件以添加图书名称等数据,作者姓名等等。请帮助我,我是一家公司在培训期间开始使用此框架的,所以请您提供一个不使用表单的代码,bz我的pm认为应该不使用表单来完成。我的实际要求是将数据插入两个不同的表中。给出的答案很好,但课本中的数据没有得到更新。如何执行该PLZ因为我没有将书本输入yethi放在外键中(作者没有自动递增)。您能指导我如何编辑和保存数据库表中已有的数据吗?您必须为此创建新问题,我已经回答了您的问题