小编Kon*_*dos的帖子

如何使用 django-mptt 创建嵌套评论系统

我正在写一个简单的博客,我正在尝试为每个帖子实现一个嵌套的评论系统。

我创建了评论模型,它通过 Django 管理页面运行良好。

我不知道如何创建用于发布新评论和回复的表单。

这是我到目前为止所拥有的:

模型.py

(...)
class Post(models.Model):
    author = models.ForeignKey('Author', on_delete=models.CASCADE)
    title = models.CharField(max_length=250)
    slug = models.SlugField(unique=True, blank=True, max_length=250)
    created = models.DateTimeField(auto_now=False, auto_now_add=True)
    modified = models.DateTimeField(auto_now=True, auto_now_add=False)
    tags = TaggableManager(blank=True)
    image = models.ImageField(upload_to="images/%Y/%m/", blank=True, null=True)
    content = models.TextField()

    def get_absolute_url(self):
        return reverse('post_detail', kwargs={'slug': self.slug, })

    # create slug
    def save(self, *args, **kwargs):
        if not self.id:
            self.slug = slugify(unidecode(self.title))
        super(Post, self).save(*args, **kwargs)

    def __str__(self):
        return str(self.title)

class Comment(MPTTModel):
    post = models.ForeignKey("Post", on_delete=models.CASCADE, null=True, related_name='comments')
    parent = TreeForeignKey('self', null=True, …
Run Code Online (Sandbox Code Playgroud)

python django django-models django-mptt

5
推荐指数
1
解决办法
3585
查看次数

Django在多个模型中搜索字段

我想在许多模型中搜索多个字段.我不想使用其他应用程序,如'Haystack',只有纯Django.例如:

# models.py

class Person(models.Model):
    first_name = models.CharField("First name", max_length=255)
    last_name = models.CharField("Last name", max_length=255)
    # other fields


class Restaurant(models.Model):
    restaurant_name = models.CharField("Restaurant name", max_length=255)
    # other fields


class Pizza(models.Model):
    pizza_name = models.CharField("Pizza name", max_length=255)
    # other fields
Run Code Online (Sandbox Code Playgroud)

当我键入'Tonny'时,我应该得到一个:

  • "Tonny Montana"来自Person模特
  • "Tonny's Restaurant"来自Restaurant模特
  • 来自pizza模特的"Tonny's Special Pizza" .

python django django-models django-views

4
推荐指数
1
解决办法
4964
查看次数