与w标签相关的其他字段?

时间:2020-05-13 18:27:05

标签: django wagtail django-taggit

我正在创建一个wagtail网站,该网站复制并添加了旧的django网站的功能:有一个类似博客的“动物列表”和“植物列表”页面,以及类似后动物的“动物详细信息”, “工厂详细信息”页面。它们通过简单的ManyToManyField共享一个通用的“需要”标签,因为动植物有一些相同的需求(例如水或干草)。需求标签显示在“需求页面”表上,该表具有“商店链接”之类的列。 最初的解决方案不像w中的自动完成标签字段那样平滑,所以我试图在w中重新创建相同的内容,但是我不知道如何将w的TaggableManager / TagItemBase链接到单独的模型,并使其具有类似“项目链接”。我也不知道每次添加不存在的标签时如何使w标签字段为用户弹出(这是旧的django实现,请参见下图)。

enter image description here

这是原始的Django模型。py

from django.db import models
from django.contrib.auth.models import User

class Animal(models.Model):
    name = models.CharField(max_length=100)
    picture = models.ImageField(upload_to='./media/pictures-animals/', null=True, blank=True, default=None)
    description = models.TextField(max_length=10000)
    adoption_reason = models.TextField(max_length=1000)
    needs = models.ManyToManyField('Need', related_name='animals')
    def __str__(self):
        return f'{self.name}'

class Plant(models.Model):
    species = models.CharField(max_length=100)
    picture = models.ImageField(upload_to='./media/pictures-plants/', null=True, blank=True, default=None)
    description = models.TextField(max_length=10000)

    needs = models.ManyToManyField('Need', related_name='plants')
    entry_date = models.DateTimeField(auto_now_add=True)
    def __str__(self):
        return f'{self.species}'

class Need(models.Model):
    title = models.CharField(max_length=100)
    link = models.URLField(max_length=1000, null=True, blank=True, default="None")
    def __str__(self):
        return f'{self.title}'

这就是我所说的“漂亮w场”的意思:enter image description here In an answer to my previous, related question, I was told I should keep the wagtail "taggedItemBase" models separate since they both will just link to taggit.Tag,所以现在我很困惑。

0 个答案:

没有答案