Как настроить форму в стиле django-uni-form? - PullRequest
2 голосов
/ 15 декабря 2009

Я использую django-uni-form для стилизации моей формы, используя фильтр my_form | as_uni_form:

<form class="uniForm" id="my_form" method="post" action="./">
      <fieldset class="inlineLabels">
           {{ my_form|as_uni_form }}
           <div  class="form_block">
                <input type="submit" value="Submit"/>
           </div>
       </fieldset>
</form>

Это выглядит действительно хорошо. Но мне нужно настроить его.

Например, одно из полей «процент» формы имеет тип IntegerField. Он отображается как <input type="text">. Проблема в том, что текстовое поле очень широкое, я бы хотел, чтобы оно было всего 2 символа в ширину. Также я хочу добавить знак процента «%» сразу после текстового поля, чтобы пользователи знали, что если они введут число «10» в текстовое поле, это означает 10%.

Есть ли способ сделать это с помощью django-uni-form?

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 02 июня 2011

У меня такой же вопрос, как и у вас. Я думаю, что длина ввода текста легко изменить с помощью CSS. Меня больше беспокоит пользовательский элемент HTML за вводом, в вашем случае процентная отметка. Я не нахожу легкого решения для этого. Похоже, либо мы должны имитировать способ визуализации поля в шаблоне django-uni-form, либо написать собственный фильтр. Я все еще жду более элегантного решения.

0 голосов
/ 16 декабря 2009

Вам нужно будет зациклить элементы вашей формы и сделать разметку uniForm самостоятельно. Либо это, вы можете настроить внешний вид каждого ввода на основе идентификатора или класса.

Я бы посмотрел на разметку, которую он генерирует, а затем перебрал элементы, генерирующие ту же разметку, и настроил их. См. документы Django для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...