【发布时间】:2014-01-02 16:03:40
【问题描述】:
我需要为表单字段分配一个 CSS 类,我指的是这个 SO 帖子: CSS styling in Django forms
但是,我无法让它与扩展另一个 ModelForm 的 ModelForm 一起使用。 在下面的代码中,“title”和“base_title”字段应分别具有“title”和“base_title”类,但是,当您检查 HTML 时,它们都没有得到任何类。任何意见,将不胜感激。谢谢。
这是我的代码:
models.py:
from django.db import models
class BaseModel(models.Model):
base_title = models.CharField(max_length=50, blank=True)
class MyModel(BaseModel):
title = models.CharField(max_length=50, blank=True)
forms.py:
from django.forms import ModelForm, TextInput
from testproj.models import MyModel
class BaseModelForm(ModelForm):
class Meta:
model = MyModel
fields = ("base_title",)
widgets = {
"base_title" : TextInput(attrs={"class" : "base_title"}),
}
class MyModelForm(BaseModelForm):
class Meta(BaseModelForm.Meta):
model = MyModel
fields = BaseModelForm.Meta.fields + ("title",)
widgets = BaseModelForm.Meta.widgets.update({
"title" : TextInput(attrs={"class" : "title"}),
})
views.py:
from django.shortcuts import render_to_response
from django.template import RequestContext
from testproj.forms import MyModelForm
def index(request):
form = MyModelForm()
return render_to_response(
"testproj/index.html",
{
"form": form,
},
context_instance=RequestContext(request)
)
【问题讨论】:
标签: css django django-forms django-widget django-models