Pull to refresh
  • by relevance
  • by date
  • by rating

ФФ + Формы + Линукс = Дружба

Firefox
Для тех, кому в линуксе не все равно, как выглядят элементы форм (чекбоксы, радиобаттоны, кнопки, поля ввода и т.п.) в ФФ, идем по адресу ubuntuforums.org/showthread.php?t=369596
и скачиваем малюсенький патчик.Установка — 5 секунд и проблема с нативным отображением элементов решена! (Ну не совсем правда, см. ниже, но по любому лучше чем стандартные серые квадраты)
Фотки прилагаются.
Читать дальше →
Total votes 7: ↑5 and ↓2 +3
Views 567
Comments 7

Динамическое создание форм на основе данных из базы в Django

Django *
Началось всё с того что надо было часто создавать однотипные формы и сохранять введённые данные в базу. По суте форма всегда одна и та же — «Заявка на регистрацию» — но в зависимости от мероприятия поля в ней разные.

Обязанности подготовки формы надо было переложить на администратора сайта, поэтому было принято решение создать механизм управления формами через админский интерфейс Django. Так появилось приложение CDBForms.
Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Views 7.1K
Comments 9

Почти автоматический ответ на тест на платформе GoogleDocs

IT-companies
Недавно я написал топик, в котором поделился с сообществом моей идеей, как реализовать тест (в моем примере психологический тест по соционике) на платформе GooglDocs.
Если честно, я был поражен популярностью топика — на мой тест ответило уже более 1000 человек, и что еще более удивительно, ответы до сих пор идут по 20-30 в день.

Данную стать я пишу в своем блоге, чтобы поделиться с вами тем, как я шел к тому, чтобы сделать полу-автоматический ответ на тесты на платформе GoogleDocs

Читать дальше →
Total votes 32: ↑32 and ↓0 +32
Views 777
Comments 14

Формы для людей

Interfaces *
Сейчас мы с вами поговорим о веб-формах. Я с высоты собственного невысокого полета успел накопить кое-какой опыт и жажду непременно им поделится. Все о чем пойдет речь ниже не является черепахой на которой стоят слоны. Речь пойдет о скотче на котором держится черепаха.

Итак…

Первое – Откуда ноги?


Уважаемый друг, для начала, я бы посоветовал отложить средства для рисования и верстки форм. Начнем мы с белого листа. И первым, чем лучше всего руководствоваться, это ряд вопросов самому себе, менеджеру проекта, разработчикам и прочим людям, которые принимают участие в данном эпическом созидательном действии.
  • Для кого делается форма?
  • Какая информация нужна, что бы понять и заполнить форму?
  • Каков результат заполнения формы?
  • Какие у нас есть возможности?

Подробности небольшого расследования
Total votes 111: ↑99 and ↓12 +87
Views 2.7K
Comments 37

Используем Python для обработки HTML форм

Lumber room
Когда я только начинал пользоваться django, самым приятным моментом после ORM, для меня, был пакет django.forms. Теперь django в прошлом — я использую стэк Werkzeug + SqlAlchemy + Jinja2, а иногда даже пытаюсь вместо SqlAlchemy экспериментировать с нереляционными хранилищами данных. Но вот замену django.forms я так и не нашёл. Поэтому решил набросать по-быстренькому что-нибудь своё.
Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Views 3.1K
Comments 4

Автоматизация написания ajax-обработчиков форм

Lumber room
Речь пойдёт о небольшом упрощении реализации доступного AJAX front-end’а. Говоря о доступности, подразумевается, что имеется 2 версии приложения для пользователей с AJAX и без оного.

Разрабатывая приложения, которые подразумевают взаимодействие с помощью AJAX, есть несколько моментов, которые очень сильно отвлекают, так что хотелось бы упростить их. В частности, при создании форм для таких приложений достаточно скучно каждый раз описывать в форме onsubmit=«mysuperfunction(…);», хотелось бы данный процесс автоматизировать. Так же хотелось бы использовать паттерн MVC для разработки в JS.

Идея подхода, использовать значение атрибута action для вызова JS-методов.

Подробнее
Total votes 8: ↑5 and ↓3 +2
Views 493
Comments 6

vCard и упрощение заполнения форм

Lumber room
Регистрация на сайте — процесс довольно долгий и напрягающий пользователя. Все стараются ускорить его и сделать максимально простым. Но вводить в данные в поля все равно приходится, и от этого никуда не денешься.

Раздумывая над этим, в один прекрасный вечер, появилась идея, как, с помощью vCard и пары скриптов, можно упростить эту процедуру.
Читать дальше →
Total votes 4: ↑3 and ↓1 +2
Views 1.9K
Comments 12

Создание HTML формы при помощи web-интерфейса

Lumber room

Применяющиеся термины


HTML — Он же XHTML, язык разметки гипертекста, для создания веб-страниц, интерпретируется браузером и отображается в виде документа, в удобной для человека форме.
FORM — Тег <FОRM> устанавливает форму на веб-странице. Форма предназначена для обмена данными между пользователем и сервером. Область применения форм не ограничена отправкой данных на сервер, с помощью клиентских скриптов можно получить доступ к любому элементу формы, изменять его и применять по своему усмотрению.

Превью


В ближайшее время, отведенное Вами на прочитку данного топика, я познакомлю Вас с сервисом предлагающим автоматическое создание исходного кода различного вида форм, для Вашего ресурса. Будь то: обратная связь, корзина, баг трэкер, и многое другое. В том числе имеется возможность создания своей формы, не по шаблонному макету. Сервис имеет статус: freeware, но даже в этом режиме он предоставляет его пользователям все возможности, которые требуются для Вас! Имеется определенное количество стилей, некоторые из них Вы сможете увидеть в следующем разделе. Для полноценного использования сервиса, от Вас потребуется всего лишь регистрация, не требуемая активации через почтовый адрес. Все данные отправленные пользователями при помощи созданной Вами формой, будут отправлены Вам на почтовый адрес, указанный Вами в настройках формы (см. раздел «Панели»).
Читать дальше →
Total votes 26: ↑14 and ↓12 +2
Views 680
Comments 23

Настройка максимального размера файла загрузки через HTML форму

Lumber room
Многие сталкивались с проблемой при закачке файлов, что сервер упорно пытается загрузить слишком большие для нас файлы и этот процесс не только тормозит пользователя, заставляя его понапрасну долго ждать, но и загружает сам сервер, на который происходит закачка файла.

Для серверов Apache с установленным на них PHP можно ограничить такой процесс 2мя способоми:
  1. ограничить закачку файла настройками самого PHP
  2. ограничить закачку файла используя механизмы отправки запроса формы на сервер (только методом POST)
Если первый вариант вполне распространен среди администраторов и программистов, то второй, более простой (даже можно сказать пользовательский) — не очень популярен.

Мне бы хотелось рассмотреть именно его.
Читать дальше →
Total votes 19: ↑6 and ↓13 -7
Views 6.4K
Comments 47

Контролы форм в html 5

Opera
Честно говоря, я сначала хотел сделать обзор, как современные браузеры поддерживают всякие новые контролы для форм из спецификации html 5. Но похоже обзора не выйдет — единственный браузер, поддерживающий больше двух контролов — Опера.

Я накидал очень простенькую страничку, куда поместил кучу input'ов с неведомыми мне доселе значениями свойства type и получил такой результат:
Читать дальше →
Total votes 90: ↑86 and ↓4 +82
Views 4.3K
Comments 82

jQuery плагин для получения данных формы + ajax аплоадер файлов

jQuery *
imageДоброго времени суток, уважаемое Хабросообщество! Не пытаясь скрыть легкое волнение, публикую свой первый пост, темой которого стал мой скромный jQuery-велосипед для быстрого и безболезненного сбора данных, введенных пользователем на странице (сразу небольшая оговорка для тех, кто закричит — «ату его! Зачем еще один подобный плагин?», отвечу: во-первых — а быть может именно это кто-то из хаброчитателей и искал, во-вторых — для саморазвития, в-третьх: для собственного удобства и безболезненного использования в своих програмных продуктах).

Итак, помимо, собственно моего небольшого плагина, нам понадобится сам jQuery последней версии, а так же небольшой плагин к нему, реализующий преобразование объектов\массивов в json-строку, для того, чтобы полученные данные можно было быстренько передавать на сервер.
updated

updated 2 — добавлена мультизагрузка!
Смотрим далее
Total votes 71: ↑66 and ↓5 +61
Views 18K
Comments 98

Работа с формами в Django

Django *
Translation
image

Формы являются одной из самых вкусных вещей в Django (после моделей, админки, url-маршрутизации и т.д.). Перед вами небольшое, но ёмкое руководство по их использованию, представляющее собой разбор 8 часто встречающихся ситуаций при программировании форм.

  • Задача. Проверка и отображение простейшей формы.
    Copy Source | Copy HTML<br/>class UserForm(forms.Form):<br/>    username = forms.CharField()<br/>    joined_on = forms.DateField() <br/>

    Этот код отвечает за отображение двух текстовых полей, за данные, которые содержатся в них, а так же за корректность введенной даты.

Читать дальше →
Total votes 44: ↑39 and ↓5 +34
Views 37K
Comments 33

Обязательные поля при регистрации

Web design *
Разрабатывая интерфейс для очередного сайта, основной аудиторией которого будут люди не очень продвинутые технически, я задумался над вопросом об обязательных для регистрации полях и минимизации их количества.

В голову пришли следующие варианты:

0 полей: при загрузке страницы незалогиненный пользователь получает сгенеренный аккаунт, который ему предлагают использовать, вот еще один пример такого подхода.
— удобно для узкоспециализированных задач и мне не подходит. По функционалу уже недалеко от куки, если бы не привязанность последних к конкретному хранилищу в браузере или по :)

1 поле: email
Пользователь оставляет email, id создается автоматически, на email он получает пароль, авторизация либо по ID либо по email, username задается пользователем уже в профиле

+ Черт, это все таки одно поле! По умолчанию может быть сгенерен устойчивый к перебору пароль.
± username свободно меняются, и могут оставаться пустыми. Учитывать пользователей по айдишникам мне не хочется
— ЧПУ приобретают вид ufosite.nl/users/18567, скорее всего пользователь захочет сменить свой пароль. При ЧПУ вида ufosite.nl/users/customusername наступает ад для поисковиков. Строить ЧПУ на основе email, который, к тому же, далеко не все захотят публиковать — это подарок спамерам и ЧПУ становятся не совсем ЧПУ.

Читать дальше →
Total votes 39: ↑23 and ↓16 +7
Views 5.6K
Comments 82

Оформляем формы

Django *
У форм в Django есть несколько предопределенных методов as_p(), as_table() и as_ul(), которые отображают форму как набор параграфов, таблицу или список. На практике этих методов не всегда достаточно, чтобы формы выглядели так, как нам хочется.

Допустим, верстальщик сверстал все формы div-ами. Документация предлагает в этом случае писать нужные теги в ручную в шаблоне. Если форма у нас только одна, можно поступить и так. Если форм несколько, то этот подход сразу же теряет все свое очарование. Решение очень простое — пронаследуем наш собственный класс форм от forms.Form или forms.ModelForm и обучим его рисовать формы так, как нужно нам.
Читать дальше →
Total votes 51: ↑41 and ↓10 +31
Views 17K
Comments 25

Снова про формы: значения по умолчанию

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

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

В статье речь пойдет о значениях в полях формы по умолчанию, когда название поля является его изначальным содержимым. А также об изящном решении этой задачи на практике.

Читать дальше →
Total votes 85: ↑60 and ↓25 +35
Views 10K
Comments 68

Получаем Object из формы

JavaScript *

Задача


При помощи javascript'а получить объект, содержащий данные формы. Набор полей и свойств должен задаваться разметкой формы. Зачем — чтоб из этого объекта получить json, xml, да и мало ли еще применений можно найти.
решение
Total votes 59: ↑49 and ↓10 +39
Views 10K
Comments 46

Валидация формы в Firefox 4, используя возможности HTML5

Website development *
Translation
Спецификация HTML5 предоставляет нам несколько новых типов полей, атрибутов и других полезных функций для форм. Одна из наиболее интересных функций — это валидация формы со стороны браузера.

К сожалению еще не все браузеры поддерживают эти возможности и поэтому мы попытались сосредоточиться на использовании этих возможностей в Firefox 4.


Почему валидация формы со стороны браузера?


Идея валидации формы в HTML5 состоит в том, чтобы отказаться от использования JavaScript при проверке содержания полей: действительно ли этот адрес электронной почты допустим? заполнено ли это поле? соответствуют ли пароли? Раньше в большинстве случаев для этих целей использовался JavaScript. Вы можете написать свой собственный javascript-код или воспользоваться javascript-библиотекой, но это всегда будет повторной, скучной и подверженной ошибкам задачей. С формами, проверенными браузером, Вы больше не должны заботиться о этих задачах, достаточно записать простой HTML.
Читать дальше →
Total votes 59: ↑54 and ↓5 +49
Views 5.5K
Comments 42

Django — обработка ошибок в ajax-формах

Django *
Hello everyone!

Все мы знаем что Django — очень мощный и динамично развивающийся фреймворк для создания веб-приложений. Однако, несмотря на наступление эпохи Веб 2.0, в нём всё ещё нет встроенных механизмов для работы с AJAX, в частности отправки и проверки форм. Возможно django просто не хочет навязывать пользователю какой-то js-фреймворк и хочет оставаться гибкой в этом вопросе, но так или иначе при разработке часто требуются формы, работающие через ajax, без перезагрузок страниц.
О создании таких форм и работе с ними и пойдёт речь в данной статье.

Сразу оговорюсь, что идея не нова, и существует несколько библиотек, реализующих требуемую функциональность, например одна из них — http://www.dajaxproject.com/.
Для тех же, кто предпочитает сам управлять взаимодействием клиента с сервером или тех, кто не хочет втягивать в проект дополнительную библиотеку и иметь дело с её багами, я расскажу как изобрести велосипед реализовать механизм самостоятельно и опишу различные способы решения проблемы.
Читать дальше →
Total votes 39: ↑34 and ↓5 +29
Views 14K
Comments 38

Плагин для «живых» форм

jQuery *
Sandbox
Статья посвящена плагину, который упрощающает жизнь client-side программиста.

При заполнении формы случается так, что учитывая введенные данные, форму нужно менять (прятать и показывать поля). Простейший пример: при заказе доставки товара пользователь выбрал «самовывоз», значит поля про адрес доставки можно спрятать, зато было бы здорово показать карту проезда для самовывоза.

И что дальше

Часто такая логика остается без реализации, однако если вы заботитесь о своих пользователях, то делать это нужно.

Первый стандартный подход это сделать некий пошаговый мастер, где форма для каждого шага генерируется на стороне сервера. По-моему мнению это неудачный вариант, так как требует муторной работы по разбиению процесса на шаги, написанию тонны кода да удовольствия от работы с такой формой мало.

Второй подход это писать «портянки» javascript'а который всю эту логику реализует на стороне клиента. Особенно грустно писать «каскадную» логику типа «если ввели a в поле A, показать B, если ввели c в поле B, то показать D. Если в A ввели что-то другое, спрятать B, а потом D».

Оба варианта нельзя назвать удобными. Прежде всего потому что логика реализуется императивным стилем вместо уместного для таких случаев декларативного. Но выход есть!
Читать дальше →
Total votes 114: ↑112 and ↓2 +110
Views 14K
Comments 67

Нескучные формы

Interfaces *
Sandbox
Формы — это обычно такие скучные элементы интерфейса, которые никто не любит заполнять. Особенно если на них много полей ввода — тогда просто рябит в глазах от обилия рамочек.

Давайте взглянем на пример. Я специально не буду брать какой-нибудь страшный экземпляр «дизайнерской» работы, а возьму в качестве примера форму регистрации со стандартными полями ввода от Микрософта:

image

Как сделать ее интереснее и приятнее для глаз
Total votes 96: ↑37 and ↓59 -22
Views 977
Comments 53