1

(偶然、最後の質問を削除しました)

ビュー関数でブレッドクラムを作成するには?

class Category(MPTTModel):
    name = models.CharField(max_length=50, verbose_name=u'Name')
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children')
    slug = models.SlugField()

class Product(models.Model):
    name = models.CharField(max_length=50, verbose_name=u'Name')
    slug = models.SlugField()
    #category = models.ManyToManyField(Category, verbose_name=u'Category')
    category = models.ForeignKey(Category)

#views
def post_content(request, product_id):
    product = get_object_or_404(Product, id = product_id)
    return render_to_response('product_info.html', {'product':product},context_instance=RequestContext(request))

product_info.html

{{ product.name }}

単一の投稿情報 ( post_content) カテゴリのパンくずリストに入れたい。このようなもの: カテゴリ > サブカテゴリ > サブサブカテゴリ .,,,

誰かが get_ancestors を使用するように私に言いました:

例:

{% for parent in category.get_ancestors %}
  <a href="{{ parent }}">{{ parent.name }}</a> &gt;
{% endfor %}
{{ category.name }}

これを私のモデルで実装するにはどうすればよいですか?

ありがとうございました。私は感謝されます。

4

1 に答える 1

4

の場合category = models.ForeignKey(Category)は、次のようにします。

{% for parent in product.category.get_ancestors %}
  <a href="{{ define_url_to_parent }}">{{ parent.name }}</a>
{% endfor %}
于 2012-10-14T12:10:29.520 に答える