0

我正在创建一个 wiki,需要在名为 revision 的模型中输入值。该表有一个指向 wikipage 的外键。我的问题是我无法在修订模型中插入值。我def form_valid(self, form)在输入用户时尝试过像你一样使用,但没有任何运气。

模型.py

class Wikipage(models.Model):
    title = models.CharField(max_length=100)
    date_created = models.DateTimeField('Created', auto_now_add=True)

    def __str__(self):
        return self.title

    class Meta:
        verbose_name_plural = "Wikipages"


class Revision(models.Model):
    wikipage = models.ForeignKey(Wikipage, null=True, on_delete=models.CASCADE, related_name='revisions')
    content = models.TextField('Content')
    author = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)
    last_edit = models.DateTimeField('Last Edited', auto_now=True)
    comment = models.TextField('Comment', blank=True)

    class Meta:
        verbose_name = 'Revision'
        verbose_name_plural = 'Revisions'
        ordering = ['-last_edit']
        get_latest_by = ['last_edit']

    def __str__(self):
        return self.content

视图.py

Class WikipageCreateView(CreateView):
    template_name = 'wiki/wikipageform.html'
    model = Wikipage
    fields = ['title']

    def form_valid(self, form):
        form.instance.author = self.request.user
        return super().form_valid(form)

使用 {{ form.as_p }} 和所有必要的东西,模板尽可能简单。

4

0 回答 0