我一直在想如何在Django中实现下拉按钮,但还没有找到有效的方法。你知道吗
我创造的是:
class AMLVideo(models.Model):
LANGUAGE = (
('LAN', 'Language'),
('FR', 'French'),
('EN', 'English'),
('HIN', 'Hindi'),
('SPA', 'Spanish'),
('GER', 'German'),
)
LEVEL = (
('BEG', 'Beginner'),
('INT', 'Intermediary'),
('ADV', 'Advanced'),
)
CATEGORY = (
('ANI', 'Animal'),
('ENV', 'Environmental'),
('MOR', 'Moral'),
('FOLK', 'Folktales'),
('ADN', 'Adventure'),
('POE', 'Poems'),
('FUN', 'Funny'),
)
title = models.CharField(max_length=100, default=None)
level = models.CharField(max_length=100, choices=LEVEL)
language = models.CharField(max_length=100, choices=LANGUAGE)
category = models.CharField(max_length=100, choices=CATEGORY)
video = EmbedVideoField(verbose_name='Videos',
help_text='URL of Video')
def __str__(self):
return self.title
class Meta:
verbose_name = "video"
verbose_name_plural = "videos"
那么,我的观点是:
def home(request):
amlvideo = AMLVideo.objects.filter().order_by("-category", "-language", "-level")
context = {"amlvideo": amlvideo}
return render(request, "aml/home.html", context)
基本上我想做的是在按钮上有默认的类别,另一个用户可以从他的个人资料中添加一个类别。这些类别然后显示在前端,当用户选择一个类别时,带有这些类别的视频将从前端“固定”下来。你知道吗
例如这个站点:https://www.planetread.org/anibooks
有人能帮我吗?你知道吗
在这种情况下,可以使用Django Form在客户端创建下拉列表。您可以使用表单保存筛选数据,然后在创建表单时,可以将用户配置文件中的类别、语言和级别添加到表单中,并将其放入视图上下文中。像这样:
过滤形式:
您的模型如下:
那么在你看来:
在
aml/home.html
中,可以使用如下形式:您可以删除提交输入并在选择更改时触发它。你知道吗
希望有帮助!你知道吗
相关问题 更多 >
编程相关推荐