有没有选择这样做: -我有一门课:
class HumanModel():
def __init__(self, name=None):
self.name = name
...
class OtherHumanModel():
def __init__(self, name=None):
self.name = name
...
等等
我有一张表格:
class SelectForm(forms.Form):
selection = forms.ChoiceField(
choices=[
(HumanModel, 'Human'),
(OtherHumanModel, 'Other Human')
]
)
在我看来:
def MyView(request):
if request.method == "GET":
form = SelectForm()
return render(request, 'some-html', {
"form": form
})
if request.method == "POST":
data = request.POST['selection']
#make a instance?
return render(...)
例如,在数据中是HumanModel,但在unicode中是 有没有可能做这个模型的实例? 对象=数据(name=“John”)???你知道吗
你可以用工厂模式来做这个。使用
HumanModel.__name__
在选择中引用类的名称,而不是在工厂中使用名称来创建类的具体实例。你知道吗相关问题 更多 >
编程相关推荐