diff options
| author | Tom Christie | 2013-10-02 13:45:35 +0100 |
|---|---|---|
| committer | Tom Christie | 2013-10-02 13:45:35 +0100 |
| commit | a14f1e886402b8d0f742fdbb912b03a4004e1735 (patch) | |
| tree | 0ddb30e4c46d50ec76067fdd4726e7e76ac6964f /rest_framework/fields.py | |
| parent | 1fd83adb9c1f888ed05d5b6d570b5e37996f96ba (diff) | |
| download | django-rest-framework-a14f1e886402b8d0f742fdbb912b03a4004e1735.tar.bz2 | |
Serializers can now be rendered directly to HTML
Diffstat (limited to 'rest_framework/fields.py')
| -rw-r--r-- | rest_framework/fields.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 210c2537..16344d01 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -123,6 +123,7 @@ class Field(object): use_files = False form_field_class = forms.CharField type_label = 'field' + widget = None def __init__(self, source=None, label=None, help_text=None): self.parent = None @@ -134,9 +135,29 @@ class Field(object): if label is not None: self.label = smart_text(label) + else: + self.label = None if help_text is not None: self.help_text = strip_multiple_choice_msg(smart_text(help_text)) + else: + self.help_text = None + + self._errors = [] + self._value = None + self._name = None + + @property + def errors(self): + return self._errors + + def widget_html(self): + if not self.widget: + return '' + return self.widget.render(self._name, self._value) + + def label_tag(self): + return '<label for="%s">%s:</label>' % (self._name, self.label) def initialize(self, parent, field_name): """ |
