gpt4 book ai didi

django-django-taggit表单

转载 作者:行者123 更新时间:2023-12-04 05:00:53 25 4
gpt4 key购买 nike

我想使用django-taggit(click here)。文档( click here)讨论了使用ModelForm生成表单,但是我已经有想要使用的表单。

假设我有这样的事情:

表格

class MyForm(forms.Form):
......
tags = forms.CharField(max_length=200, widget=forms.Textarea)

如何保存来自 tags字段的标签?我的 views.py中有什么内容?一个真实的例子将不胜感激。

最佳答案

我对django taggit应用程序不太熟悉,但是看起来如果您想使用该应用程序使用的相同字段和窗口小部件设置,则可以从taggit.forms( https://github.com/alex/django-taggit/blob/master/taggit/forms.py )导入它们:

您的models.py:

from django.db import models

from taggit.managers import TaggableManager

class Food(models.Model):
name = models.CharField(max_length=20)

tags = TaggableManager()

您的forms.py
from taggit.forms import *

class MyForm(forms.Form):
name = forms.CharField()
m_tags = TagField()

TagField将使用taggit应用程序中utils.py中的parse_tags方法返回处理后的输入。返回看起来是一个清理列表(set(words))

您的views.py
if form.is_valid():
name = form.cleaned_data['name']
m_tags = form.cleaned_data['m_tags']
object = Food(name=name)
object.save()
for m_tag in m_tags:
object.tags.add(m_tag)
return HttpResponseRedirect('/thanks/')

关于django-django-taggit表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5359714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com