Questions tagged «django-models»

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

17
在django中区分null = True,空白= True
想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 当我们在Django中添加数据库字段时,通常会这样写: models.CharField(max_length=100, null=True, blank=True) 同样是与做ForeignKey,DecimalField等有什么根本区别在其 null=True 只要 blank=True 只要 null=True, blank=True 在相对于不同的(CharField,ForeignKey,ManyToManyField,DateTimeField)字段。使用1/2/3有哪些优点/缺点?

15
如何在Django queryset过滤中执行不等于?
在Django模型QuerySets中,我看到比较值存在__gt和__lt,但是存在__ne// !=/ <>(不等于?)。 我想使用不等于过滤掉: 例: Model: bool a; int x; 我想要 results = Model.objects.exclude(a=true, x!=5) 在!=不正确的语法。我试过__ne,<>。 我最终使用: results = Model.objects.exclude(a=true, x__lt=5).exclude(a=true, x__gt=5)

10
如何在MySQL中暂时禁用外键约束?
是否可以在MySQL中暂时禁用约束? 我有两个Django模型,每个模型都有一个外键。由于ForeignKey约束,删除模型实例将返回错误: cursor.execute("DELETE FROM myapp_item WHERE n = %s", n) transaction.commit_unless_managed() #a foreign key constraint fails here cursor.execute("DELETE FROM myapp_style WHERE n = %s", n) transaction.commit_unless_managed() 是否可以暂时禁用约束并仍然删除?





2
如何将两个“唯一”字段定义为一对
有没有一种方法可以将几个字段定义为Django中唯一的字段? 我有一张(期刊的)卷表,而我不希望同一期刊有一个以上的卷号。 class Volume(models.Model): id = models.AutoField(primary_key=True) journal_id = models.ForeignKey(Journals, db_column='jid', null=True, verbose_name = "Journal") volume_number = models.CharField('Volume Number', max_length=100) comments = models.TextField('Comments', max_length=4000, blank=True) 我试图将unique = Trueas属性放在字段中journal_id,volume_number但是不起作用。

8
on_delete对Django模型有什么作用?
我对Django非常熟悉,但是最近发现on_delete=models.CASCADE模型中存在一个选项,我在文档中搜索了相同的选项,但找不到以下内容: 在Django 1.9中进行了更改: on_delete现在可以用作第二个位置参数(以前通常只作为关键字参数传递)。在Django 2.0中,这是必填参数。 使用的一个例子是 from django.db import models class Car(models.Model): manufacturer = models.ForeignKey( 'Manufacturer', on_delete=models.CASCADE, ) # ... class Manufacturer(models.Model): # ... pass on_delete是做什么的?(我想如果删除模型,要执行的操作) 怎么models.CASCADE办?(文档中的任何提示) 还有其他可用的选项(如果我的猜测是正确的)? 有关此文档的位置在哪里?

9
如何在Django中以GROUP BY查询?
我查询一个模型: Members.objects.all() 它返回: Eric, Salesman, X-Shop Freddie, Manager, X2-Shop Teddy, Salesman, X2-Shop Sean, Manager, X2-Shop 我想要的是知道group_by向我的数据库发送查询的最佳Django方法,例如: Members.objects.all().group_by('designation') 当然,这不起作用。我知道我们可以在上做一些技巧django/db/models/query.py,但我只是很好奇知道如何在不打补丁的情况下进行操作。

13
Django ModelAdmin中的“ list_display”可以显示ForeignKey字段的属性吗?
我有一个Person模型,它与有一个外键关系Book,该模型有许多字段,但我最关心的是author(标准CharField)。 话虽如此,在我的PersonAdmin模型中,我想book.author使用显示list_display: class PersonAdmin(admin.ModelAdmin): list_display = ['book.author',] 我已经尝试了所有显而易见的方法来执行此操作,但是似乎没有任何效果。 有什么建议么?

25
保存时,如何检查字段是否已更改?
在我的模型中,我有: class Alias(MyBaseModel): remote_image = models.URLField(max_length=500, null=True, help_text="A URL that is downloaded and cached for the image. Only used when the alias is made") image = models.ImageField(upload_to='alias', default='alias-default.png', help_text="An image representing the alias") def save(self, *args, **kw): if (not self.image or self.image.name == 'alias-default.png') and self.remote_image : try : data …

4
Django ORM中的select_related和prefetch_related有什么区别?
在Django文件中, select_related() “遵循”外键关系,在执行查询时选择其他相关对象数据。 prefetch_related() 对每个关系进行单独的查找,并在Python中执行“联接”。 “在python中进行连接”是什么意思?有人可以举例说明吗? 我的理解是,对于外键关系,使用select_related; 对于M2M关系,请使用prefetch_related。它是否正确?

13
Django auto_now和auto_now_add
对于Django 1.1。 我的models.py中有这个: class User(models.Model): created = models.DateTimeField(auto_now_add=True) modified = models.DateTimeField(auto_now=True) 更新行时,我得到: [Sun Nov 15 02:18:12 2009] [error] /home/ptarjan/projects/twitter-meme/django/db/backends/mysql/base.py:84: Warning: Column 'created' cannot be null [Sun Nov 15 02:18:12 2009] [error] return self.cursor.execute(query, args) 我数据库的相关部分是: `created` datetime NOT NULL, `modified` datetime NOT NULL, 这值得关注吗? 附带问题:在我的管理工具中,这两个字段没有显示。那是预期的吗?


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.