Questions tagged «django-models»

对于有关使用Web框架Django中的模型类的问题。

4
编写__init__函数以在Django模型中使用
我正在尝试为__init__我的一个模型编写函数,以便可以通过执行以下操作创建对象: p = User('name','email') 当我编写模型时,我有: def __init__(self, name, email, house_id, password): models.Model.__init__(self) self.name = name self.email = email 这样可以正常工作,我可以将对象保存到数据库中,但是当我这样做时User.objects.all(),除非我拿出__init__函数,否则它不会拉任何东西。有任何想法吗?

5
django模板系统,在模型内部调用函数
我想从我的模型中的模板调用一个函数,例如: class ChannelStatus(models.Model): .............................. .............................. def get_related_deltas(self,epk): mystring = "" if not self.get_error_code_delta(epk): return mystring else: for i in self.get_listof_outage(): item = i.error_code.all() for x in item: if epk == x.id: mystring= mystring +" "+str(i.delta()) return mystring 当我想从模板中调用它时:假设在渲染时,我将channel_status_list传递为 channel_status_list = ChannelStatus.objects.all() {% for i in channel_status_list %} {{ i.get_related_deltas(3) }} …


4
Django对ManyToMany计数模型?
假设我的models.py中有这样的内容: class Hipster(models.Model): name = CharField(max_length=50) class Party(models.Model): organiser = models.ForeignKey() participants = models.ManyToManyField(Profile, related_name="participants") 现在,在我的views.py中,我想执行一个查询,该查询将为参与者超过0个的用户获取一个聚会。 可能是这样的: user = Hipster.get(pk=1) hip_parties = Party.objects.filter(organiser=user, len(participants) > 0) 最好的方法是什么?

5
Django post_save()信号实现
我有一个关于django的问题。 我这里有许多对多模型 class Product(models.Model): name = models.CharField(max_length=255) price = models.DecimalField(default=0.0, max_digits=9, decimal_places=2) stock = models.IntegerField(default=0) def __unicode__(self): return self.name class Cart(models.Model): customer = models.ForeignKey(Customer) products = models.ManyToManyField(Product, through='TransactionDetail') t_date = models.DateField(default=datetime.now()) t_sum = models.FloatField(default=0.0) def __unicode__(self): return str(self.id) class TransactionDetail(models.Model): product = models.ForeignKey(Product) cart = models.ForeignKey(Cart) amount = models.IntegerField(default=0) 对于创建的1个购物车对象,我可以插入尽可能多的新TransactionDetail对象(产品和金额)。我的问题是。如何实现触发器?我想要的是每当创建交易明细时,我希望产品的存货数量减去交易明细中的数量。 …

3
每个模型多张图片
我在Django中编写一个简单的房地产列表应用程序。每个属性需要具有可变数量的图像。图片必须具有可编辑的顺序。而且我需要使管理员用户验证。 这样说,我有什么选择? 有我不知道的ImageList字段吗? 是否有类似的应用程序django.contrib.comments对我有用? 如果我必须自己编写它,我将如何使管理端像样?我想象中的东西比ImageField提供的东西要光滑得多,并且需要一些拖放来进行重新排序。但是我在编写管理页面方面完全是笨手笨脚

4
Django ModelForm具有隐藏的输入
所以我有我的TagStatus模型。我正在尝试为此制作一个ModelForm。但是,我的表单要求使用{{tag.name}}填充隐藏的输入。我一直在浏览文档,但不知道如何使标记字段成为隐藏的输入。也许ModelForm不是要走的路? models.py: class TagStatus(models.Model): user = models.ForeignKey(User, null=True, unique=True) status = models.CharField(max_length=2, choices=tag_statuses) tag = models.ForeignKey(Tag, null=True, blank=True) def __unicode__(self): return self.status def save(self, *args, **kwargs): super(TagStatus, self).save(*args, **kwargs) class TagStatusForm(modelForm): class Meta: model = TagStatus fields = ('status','tag') widgets = { 'select': Select, 'tag': ??? } django views.py: @login_required …

3
在Django管理界面中,有没有办法复制项目?
只是想知道是否有一种简单的方法来添加功能以复制管理界面中的现有清单? 在数据输入中,我们遇到了很多项目与另一个项目共享通用数据的情况,并且为了节省时间,快速复制现有清单并仅更改更改的数据将非常好。使用更好的模型结构将是减少数据重复的一种方法,但是将来可能会出现需要重复更改重复数据的情况。




3
Django模型字段默认为Null
我需要让我的Django应用程序允许我为某个模型字段设置默认值NULL。我已经查看了null,blank和default参数,但是还不清楚我需要使用这三个参数的哪种组合才能获得理想的效果。我尝试设置,default=NULL但抛出错误。如果我指定blank=True, null=True并且没有默认值,那么运行时它将默认恢复为NULL吗?

7
如何在Django中正确使用“选择”字段选项
我在这里阅读教程:https : //docs.djangoproject.com/en/1.5/ref/models/fields/#choices ,我正在尝试创建一个框,用户可以在其中选择出生的月份我试过的是 MONTH_CHOICES = ( (JANUARY, "January"), (FEBRUARY, "February"), (MARCH, "March"), .... (DECEMBER, "December"), ) month = CharField(max_length=9, choices=MONTHS_CHOICES, default=JANUARY) 这个对吗?我看到我正在阅读的教程中,由于某种原因,它们首先创建了变量,就像这样 FRESHMAN = 'FR' SOPHOMORE = 'SO' JUNIOR = 'JR' SENIOR = 'SR' 他们为什么创建这些变量?此外,MONTHS_CHOICES处于名为People的模型中,因此我提供的代码将在数据库中创建名为“ People”的“ Months Choices”列,并说明用户单击月份后出生的月份。并提交表格?

8
更新Django数据库以反映现有模型中的更改
我已经定义了一个模型,并通过创建了它的关联数据库manager.py syncdb。现在,我已经向模型添加了一些字段,我syncdb再次尝试了,但是没有输出出现。尝试从模板访问这些新字段时,出现“ No Such Column”异常,使我相信syncdb实际上并未更新数据库。这里正确的命令是什么?

5
如何更新Django模型实例的多个字段?
我想知道,在Django中更新模型实例的多个字段的标准方法是什么?...如果我有一些领域的模型, Class foomodel(models.Model): field1 = models.CharField(max_length=10) field2 = models.CharField(max_length=10) field3 = models.CharField(max_length=10) ... ...,然后在给定一个字段的情况下实例化它,然后在单独的步骤中,我想提供其余字段,如何仅通过传递字典或键值参数来做到这一点?可能? 换句话说,假设我有一个包含一些数据的字典,该字典具有我要写入该模型实例的所有内容。该模型实例已在一个单独的步骤中实例化,可以说它尚未持久化。我可以foo_instance.field1 = my_data_dict['field1']对每个字段说,但是有什么告诉我,应该有一种在模型实例上调用方法的方法,在该方法中,我只需一次传递所有字段值对并对其进行更新。有点像foo_instance.update(my_data_dict)。我没有看到任何这样的内置方法,是我错过了它还是有效地做到了? 我觉得这是一个显而易见的RTM问题,但我只是在文档中没有看到。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.