0
我在頁面上放置TextBlocks。文本塊可能出現在不同的頁面上,頁面上可能有幾個文本塊。每個頁面可以按照它自己的順序包含這些塊。 這可以通過使用單獨的到參數來解決。像這樣:Django:我怎樣才能爲多對多的關係添加重量/排序?
class TextBlock(models.Model):
title = models.CharField(max_length=255)
text = models.TextField()
class Page(models.Model):
textblocks = models.ManyToManyField(TextBlock, through=OrderedTextBlock)
class OrderedTextBlock(models.Model):
text_block = models.ForeignKey(TextBlock)
product_page = models.ForeignKey(Page)
weight = models.IntegerField()
class Meta:
ordering = ('weight',)
但我不是非常intehousiastic關於DRY違反我的應用程序。 (有很多命令ManyToMany關係)。有沒有推薦的方法來解決這個問題?
編輯:錯字
自定義字段一個很好的想法指向了這個方向: http://pypi.python.org/pypi/django-sortedm2m/0.2.0 – 2010-06-18 08:39:01