我在业余时间正在写一个Django应用程序,来进行一个我们正在运行的脚踢比赛。 我想明智地使用这个时间,并加快virtualenv,pip,包装,django 1.3,以及如何编写一个可重新分发的应用程序。 到现在为止还挺好。 我在包装部分。 GitHub上的很多django应用程序大多都是以大致相同的方式捆绑在一起的。 我将以django-uni-forms为例。 我正在做的一个假设是MANIFEST.in和setup.py是pip需要完成的唯一必需工作。 那是对的吗? 如果我的假设是错误的,还需要其他什么组件? 通常是生成必需的包装文件还是手工制作? 可以描述依赖关系,然后安装吗? 我的应用程序依赖于django-uni-forms ,并且在应用程序中的一个requirements.txt文件中列出了我用来安装依赖关系的文件。 但这是包装系统可以照顾的东西吗? 我需要遵循什么步骤打包我的应用程序,使得pip能够安装它以及任何依赖项?
# admin.py class CustomerAdmin(admin.ModelAdmin): list_display = ('foo', 'number_of_orders') # models.py class Order(models.Model): bar = models.CharField[…] customer = models.ForeignKey(Customer) class Customer(models.Model): foo = models.CharField[…] def number_of_orders(self): return u'%s' % Order.objects.filter(customer=self).count() 我怎么能sorting客户,取决于他们有number_of_orders ? admin_order_field属性不能在这里使用,因为它需要一个数据库字段进行sorting。 是否有可能,因为Django依赖底层数据库来执行sorting? 创build一个聚合字段来包含订单的数量看起来像在这里矫枉过正。 有趣的是:如果您在浏览器中手动更改url来对此列进行sorting,则会按预期工作!
我想采取模型的最后10个实例,并有这样的代码: Model.objects.all().order_by('-id')[:10] 是不是首先拿起所有的例子,然后只拿10个最后一个呢? 有没有更有效的方法?
我讨厌浪费人们的时间。 这是我在这里的第一篇文章,在广泛search答案的日子之后,这只是最后一招。 我真的很难把握Django内容types的概念。 这感觉非常黑客,并最终反对Python如何去做。 这就是说,如果我要使用Django,那么我必须在框架的范围内工作。 所以我来这里想知道是否有人可以给出一个实际的例子,说明一个内容types是如何工作的,以及如何实现它。 几乎我所有的教程(主要是在博客上)都没有真正涵盖这个概念。 他们似乎拿起了Django文档离开(似乎无处)的地方。 我很欣赏你们在这里做的事情,我真的很想看到你们要说的话。
我现在正在定义我的Django模型,并且我意识到模型字段types中没有OneToManyField 。 我确信有一种方法可以做到这一点,所以我不知道我错过了什么。 我基本上有这样的东西: class Dude(models.Model): numbers = models.OneToManyField('PhoneNumber') class PhoneNumber(models.Model): number = models.CharField() 在这种情况下,每个Dude可以有多个PhoneNumber ,但是这种关系应该是单向的,因为我不需要从PhoneNumber中知道Dude拥有它,因为我可能拥有许多拥有PhoneNumber实例的不同对象例如Business ,例如: class Business(models.Model): numbers = models.OneToManyField('PhoneNumber') 我将在模型中replaceOneToManyField (哪个不存在)来表示这种关系? 我来自Hibernate / JPA,声明一对多的关系如下所示: @OneToMany private List<PhoneNumber> phoneNumbers; 我怎样才能expression这个在Django?
如何将django模型对象转换为所有字段的字典? 所有理想情况下都包含带有editable = False的外键和字段。 让我详细说一下。 假设我有如下的django模型: from django.db import models class OtherModel(models.Model): pass class SomeModel(models.Model): value = models.IntegerField() value2 = models.IntegerField(editable=False) created = models.DateTimeField(auto_now_add=True) reference1 = models.ForeignKey(OtherModel, related_name="ref1") reference2 = models.ManyToManyField(OtherModel, related_name="ref2") 在terminal,我做了以下几点: other_model = OtherModel() other_model.save() instance = SomeModel() instance.value = 1 instance.value2 = 2 instance.reference1 = other_model instance.save() instance.reference2.add(other_model) instance.save() 我想将其转换为下面的字典: {'created': datetime.datetime(2015, […]
在我的core.html我有一个块标记为JavaScript。 如果我可以将更多的行添加到此块而不覆盖其中的所有内容,那将是非常好的。
在Django文档中, select_related()“跟随”外键关系,在执行查询时select其他相关对象数据。 prefetch_related()为每个关系进行单独的查找,并在Python中执行“连接”。 “在python中join”是什么意思? 有人可以用一个例子来说明吗? 我的理解是,对于外键关系,使用select_related; 对于M2M关系,使用prefetch_related。 它是否正确?
我有一个python-django应用程序 我正在使用unit testing框架 testing安排在模块目录下的“tests.py”文件中 我通过./manage.py test app运行testing 现在.. tests.py文件变得相当大/复杂/杂乱 我想将tests.py分解成更小的testing集合… 怎么样?
我如何查询/过滤Django中,并忽略我的查询string的情况下? 我有类似的东西,喜欢忽略my_parameter的情况: MyClass.objects.filter(name=my_parameter)