Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何向多个记录添加时间戳_Python_Django_Django Models_Django Forms_Many To Many - Fatal编程技术网

Python 如何向多个记录添加时间戳

Python 如何向多个记录添加时间戳,python,django,django-models,django-forms,many-to-many,Python,Django,Django Models,Django Forms,Many To Many,我有以下型号: class Meeting(models.Model): meeting_title = models.CharField(default='', max_length=128, blank=True, null=True) meeting_time = models.TimeField(blank=False, null=False) meeting_date = models.DateField(blank=False, null=False)

我有以下型号:

class Meeting(models.Model):
    meeting_title = models.CharField(default='', max_length=128, blank=True, null=True)
    meeting_time = models.TimeField(blank=False, null=False)
    meeting_date = models.DateField(blank=False, null=False) 
    meeting_visitors = models.ManyToManyField(Visitor, blank=True, default="")
及以下表格:

class AddMeetingForm(forms.ModelForm):
    class Meta:
            model = Meeting
            fields = '__all__'
由于
meeting\u visitors
是一个
manytomy
字段,它可以包含一个或多个
Visitor
记录

此表单可以在一天中的不同时间更新。我想知道添加到会议中的每个
访客的时间戳(即在现实世界中,当他们到达会议时)

最简单/最有效的方法是什么


我知道我可以通过
meeting\u updated=models.DateTimeField(auto\u now\u add=False,auto\u now=True)获取模型实例更新的
时间戳
但我希望在
会议访问者
字段中的每条记录都具有相同的记录。

您可以使用多对多字段中的
through
关键字轻松创建此关系

Django允许您指定将用于管理 多对多关系。然后可以在 中间模型。中间模型与 ManyToManyField使用through参数指向 将作为中间人

因此,您可以这样使用它

class Visitor(models.Model):
    name = models.CharField(max_length=30)

class Meeting(model.Model):
    title = models.CharField(max_length=30)
    time = models.TimeField(blank=False, null=False)
    date = models.DateField(blank=False, null=False) 
    attendance = models.ManyToManyField(Visitor, through='Attendant')


class Attendant(models.Model):
    visitors = models.ForeignKey(Visitor)
    meeting = models.ForeignKey(Meeting)
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)
这就是你需要的