gpt4 book ai didi

python - Django - MultiValueField 实现

转载 作者:太空宇宙 更新时间:2023-11-03 14:31:37 26 4
gpt4 key购买 nike

我需要一个 MultiWidgets 来呈现 HTML,就像下面的 MultiValueField 一样:

<div class="formfield_trailer">
<div class="formfield_title">My Family</div>
<select label="My Family" name="family_biodata[]" id="id_my_family_0">
<option value="0">Select One</option>
<option value="F">Father</option>
<option value="M">Mother</option>
</select>
<input type="text" size="5" class="family" label="My Parents" id="id_my_family" name="family_biodata[]">
<input type="checkbox" label="My Family" name="family_biodata[]" id="id_my_family_2">
<p><a>Add More<br><br></a></p>
</div>

提前致谢。另外,由于我是新手,而且 Django 文档没有详细说明,因此任何人都可以帮助我获得有关此的详细教程链接。

最佳答案

这是一个说明 MultiValueField 示例的项目:

https://github.com/justinlilly/django_multiwidget_demo

这是该项目来源的相关部分:

# fields
from django.forms import fields
from djnycapp.widgets import AutoCompleteWidget
from django.contrib.auth.models import User

class UserAutoCompleteField(fields.MultiValueField):
widget = AutoCompleteWidget

def __init__(self, *args, **kwargs):
"""
Have to pass a list of field types to the constructor, else we
won't get any data to our compress method.
"""
all_fields = (
fields.CharField(),
fields.CharField(),
)
super(UserAutoCompleteField, self).__init__(all_fields, *args, **kwargs)

def compress(self, data_list):
"""
Takes the values from the MultiWidget and passes them as a
list to this function. This function needs to compress the
list into a single object to save.
"""
if data_list:
return User.objects.get(id=data_list[0])
return None

关于python - Django - MultiValueField 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9835878/

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