Questions tagged «django-models»

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



5
将models.py拆分为几个文件
我正在尝试将models.py我的应用拆分为几个文件: 我的第一个猜测是这样做: myproject/ settings.py manage.py urls.py __init__.py app1/ views.py __init__.py models/ __init__.py model1.py model2.py app2/ views.py __init__.py models/ __init__.py model3.py model4.py 这不起作用,然后我发现了这个问题,但是在此解决方案中,我仍然遇到问题,当我运行时,出现python manage.py sqlall app1类似以下内容: BEGIN; CREATE TABLE "product_product" ( "id" serial NOT NULL PRIMARY KEY, "store_id" integer NOT NULL ) ; -- The following references should be added but …

5
Django信号与覆盖保存方法
我无法解决这个问题。现在我有一些看起来像这样的模型: def Review(models.Model) ...fields... overall_score = models.FloatField(blank=True) def Score(models.Model) review = models.ForeignKey(Review) question = models.TextField() grade = models.IntegerField() 一个Review是有几个“分数”,总体分数是分数的平均值。保存评论或分数后,我需要重新计算total_score平均值。现在,我正在使用重写的保存方法。使用Django的信号分配器会有好处吗?

1
Django管理员ManyToMany内联“没有ForeignKey to”错误
我正在将Django管理员设置为以下模型: class Quote(models.Model): author = models.CharField(max_length=100) quote = models.CharField(max_length=1000) tags = models.ManyToManyField('Tag') class Tag(models.Model): name = models.CharField(max_length=100) 使用以下代码: class TagInline(admin.TabularInline): model = Tag class QuoteAdmin(admin.ModelAdmin): list_display = ('author', 'quote') inlines = (TagInline,) class TagAdmin(admin.ModelAdmin): pass admin.site.register(Quote, QuoteAdmin) admin.site.register(Tag, TagAdmin) 尝试查看管理页面以添加时Quote,页面显示错误提示<class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'>。在添加内联之前,这没有发生。有什么问题?如何正确将aTag作为内联添加? (我花了20分钟的时间来寻找答案;我发现了类似的问题,但他们的答案都对我没有用。)

9
获取所有相关的Django模型对象
如何获得所有具有ForeignKey指向对象的模型对象的列表?(有点像Django管理员中DELETE CASCADE之前的Delete确认页面)。 我试图提出一种合并数据库中重复对象的通用方法。基本上,我希望所有具有ForeignKeys指向对象“ B”的对象都被更新为指向对象“ A”,这样我就可以删除“ B”而不会丢失任何重要内容。 谢谢你的帮助!


13
Django中唯一的BooleanField值?
假设我的models.py像这样: class Character(models.Model): name = models.CharField(max_length=255) is_the_chosen_one = models.BooleanField() 我只希望拥有一个Character实例,而拥有is_the_chosen_one == True其他所有实例is_the_chosen_one == False。我怎样才能最好地确保遵守这种唯一性约束? 考虑到在数据库,模型和(admin)表单级别遵守约束的重要性的答案的最高分!

4
Django过滤器包含对多对多
我试图通过多对多关系过滤一堆对象。因为该trigger_roles字段可能包含多个条目,所以我尝试了contains过滤器。但是由于它被设计为与字符串一起使用,我几乎无助于我如何过滤这种关系(您可以忽略values_list()atm。)。 此功能附加到用户配置文件: def getVisiblePackages(self): visiblePackages = {} for product in self.products.all(): moduleDict = {} for module in product.module_set.all(): pkgList = [] involvedStatus = module.workflow_set.filter(trigger_roles__contains=self.role.id,allowed=True).values_list('current_state', flat=True) 我的工作流程模型如下所示(简化): class Workflow(models.Model): module = models.ForeignKey(Module) current_state = models.ForeignKey(Status) next_state = models.ForeignKey(Status) allowed = models.BooleanField(default=False) involved_roles = models.ManyToManyField(Role, blank=True, null=True) trigger_roles = models.ManyToManyField(Role, blank=True, null=True) …


7
django syncdb和更新的模型
我最近更新了我的模型,在其中添加了BooleanField,但是当我这样做时python manage.py syncdb,它没有将新字段添加到模型的数据库中。我怎样才能解决这个问题 ?


8
检查OneToOneField在Django中是否为None
我有两个这样的模型: class Type1Profile(models.Model): user = models.OneToOneField(User, unique=True) ... class Type2Profile(models.Model): user = models.OneToOneField(User, unique=True) ... 如果用户具有Type1或Type2配置文件,我需要做一些事情: if request.user.type1profile != None: # do something elif request.user.type2profile != None: # do something else else: # do something else 但是,对于没有类型1或类型2概要文件的用户,执行这样的代码会产生以下错误: Type1Profile matching query does not exist. 如何检查用户拥有的个人资料类型? 谢谢

4
Django中“ max_length”的最大大小是多少?
这是我的模型: class Position(models.Model): map = models.ForeignKey(Map,primary_key=True) #members=models.CharField(max_length=200) LatLng = models.CharField(max_length=40000) infowindow = models.CharField(max_length=40000) 但是它不能运行。max_length参数的最大大小是多少?

6
django抽象模型与常规继承
除了语法之外,使用django抽象模型和对django模型使用纯Python继承之间有什么区别?利弊? 更新:我认为我的问题被误解了,并且我收到了关于抽象模型与从django.db.models.Model继承的类之间的区别的答复。 我实际上想知道从django抽象类(Meta:abstract = True)继承的模型类和从“ object”(而不是models.Model)继承的普通Python类之间的区别。 这是一个例子: class User(object): first_name = models.CharField(.. def get_username(self): return self.username class User(models.Model): first_name = models.CharField(... def get_username(self): return self.username class Meta: abstract = True class Employee(User): title = models.CharField(...

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.