@python_beginnersЭта группа больше не существует

Страница 436 из 1885
Johnnie
13.09.2016
19:42:58
нашел, сорян :)

и чо можно к хуям не рисовать все эти form action=submit и тд?

просто отдать форму, он сам ее нарисует?

Zart
13.09.2016
19:43:39
в некоторых либах для работы с формами таки да

Google
Igor
13.09.2016
19:43:44
да, по ID хороший вариант, большинство так и делает, зачем как-то иначе )

Dmitriy
13.09.2016
19:44:00
вооот поэтому я и прицепился к id в таблице

окей, спасибо?

Johnnie
13.09.2016
19:44:40
и ошибки сама тоже отрисует форма?

ну ка пойду попробую

Igor
13.09.2016
19:44:47
и ошибки сама тоже отрисует форма?
да, там есть че-то типа form.errors

Johnnie
13.09.2016
19:44:50
а то я сижу думаю куда впихнуть то что было из другого примера

{% if form.errors %} <div> {% for field, error in form.errors.items() %} {% for e in error %} {{ e }}<br> {% endfor %} {% endfor %} </div> {% endif %}

вот так там было

бля, табы)

Igor
13.09.2016
19:45:10
вот, да

Johnnie
13.09.2016
19:45:23
исправил

Google
Johnnie
13.09.2016
19:45:34
только эта хуйня некрасиво рисует

просто текст и все

Zart
13.09.2016
19:45:51
только эта хуйня некрасиво рисует
добро пожаловать в реальный мир, нео

или ваяй цсс

Igor
13.09.2016
19:46:01
вперед внутрь цикла {% for e in error %}

Johnnie
13.09.2016
19:46:02
не

я ща попробую чтоб форма сама себя нарисовала

фи, у них примеры старые

name = TextField(u'Your name', validators=[Required()])

теперь уже говорят надо StringField

Zart
13.09.2016
19:47:07
ща эти люди откроют для себя формалхимию...

Igor
13.09.2016
19:47:18
wtforms-alchemy, если быть точным :(

Johnnie
13.09.2016
19:47:32
да я побаловаться просто

посмотрел на куте и решил, что лучше потыкаю все таки фласк :)

Igor
13.09.2016
19:47:50
хахаха

Johnnie
13.09.2016
19:48:18
сначала думал локальное приложение для себя запилить, теперь пробую так ?

куте реально какой-то совсем не юзер-френдли

встал с пинками

а чо он ошибки не пишет?

Igor
13.09.2016
19:55:47
покажи html

Google
Johnnie
13.09.2016
19:55:57
class LoginForm(Form): username = StringField('Username', [DataRequired(message='Forgot your user name?'), Length(min=3, max=20)]) password = PasswordField('Password', [DataRequired(message='Must provide a password. ;-)'), Length(min=6, max=20)]) remember_me = BooleanField('Remember me', default=False) submit = SubmitField(u'Sign in')

Igor
13.09.2016
19:56:01
нет

html

шаблон

Johnnie
13.09.2016
19:56:05
https://github.com/mbr/flask-bootstrap/blob/master/sample_app/templates/signup.html

хтмл вот этот

хмм

novalidate=True

оно?

Igor
13.09.2016
19:56:26
во-первых novalidate

во-вторых где ты там цикл увидел, который по ошибкам проходится))

Johnnie
13.09.2016
19:56:40
я думал он внутри :))

Igor
13.09.2016
19:56:55
хм, кстати

https://pythonhosted.org/Flask-Bootstrap/forms.html

не, судя по всему, надо все-таки form_errors отдельно

Johnnie
13.09.2016
19:57:52
убрал

не сработало

ага

причем по ошибке например когда поле Email()

а вводишь всякую чушь

Google
Johnnie
13.09.2016
19:58:15
он ругается

а на submit не ругается

Igor
13.09.2016
19:58:34
потому что это на стороне фронта происходит

(валидация емейла)

http://www.w3schools.com/html/tryit.asp?filename=tryhtml_input_email вот например

Johnnie
13.09.2016
19:59:44
да, такое же было, только по-русски

все таки придется форму расписывать и пробегаться по ошибкам вручную да?

Admin
ERROR: S client not available

Igor
13.09.2016
20:01:24
йеп

flask-bootstrap не идеален, чего поделать

Johnnie
13.09.2016
20:01:33
{{ wtf.quick_form(form) }} - круто выглядит

а жаль

Igor
13.09.2016
20:01:46
ну ничего не мешает тебе сделать template tag, который запихнет туда ошибки

Johnnie
13.09.2016
20:02:13
эээ? я фласк ковыряю 1.5 дня :)

это как?

Igor
13.09.2016
20:05:03
сек, ща напишу пример

че-т типа того, лень проверять :( в шаблоне: {{ johnnie_form(form) }} в бекенде: @app.template_global() def johnnie_form(form): output_html = '' for field in form: if form.field.errors: output_html += 'вот у этого поля ошибки: ' + ', '.join(form.field.errors) output_html += field() # field() возвращает html-код поля - т.е. <input ... /> return output_html

Johnnie
13.09.2016
20:12:27
https://paste.fedoraproject.org/427723/79754314/

вот так у меня ща заработало

ща твое посмотрю, спасибо

Google
Johnnie
13.09.2016
20:12:59
хм, ну то есть типа макроса объявить?

Igor
13.09.2016
20:13:01
ага

Johnnie
13.09.2016
20:13:12
а тут он сразу выводит ошибки

так короче получается)

⬗VLAD⌶K⬖
13.09.2016
20:13:34
посоны меня тут нешуточный страх разбирает, что я никогда не стану погромистом,?

Igor
13.09.2016
20:13:35
ну можно form.errors (тогда будут все ошибки в форме), можно form.field.errors (тогда будут все ошибки выбранного поля), это уж кому как

Johnnie
13.09.2016
20:13:57
так выдает по коду из ссылки

Cykooz
13.09.2016
20:14:32
посоны меня тут нешуточный страх разбирает, что я никогда не стану погромистом,?
Чего это вдруг? Тебе это не интересно? Вызывает скуку и сонливость?

Johnnie
13.09.2016
20:15:01
ага
а в бэкенде этот код в форму вставлять тоже? так, на будущее

Igor
13.09.2016
20:15:08
ненене

⬗VLAD⌶K⬖
13.09.2016
20:15:14
Чего это вдруг? Тебе это не интересно? Вызывает скуку и сонливость?
чувство что от знаний которыми нужно овладеть башка вспухает

Igor
13.09.2016
20:15:29
ваще где-нибудь отдельно, но чтобы этот файл загружался и был доступ к фласковому объекту app

Johnnie
13.09.2016
20:15:34
где его жинжа искать то будетт

@app.template_global()

или вот эта штука все делает?

Igor
13.09.2016
20:16:12
угу

можешь в свой views.py это запихнуть

Cykooz
13.09.2016
20:16:29
чувство что от знаний которыми нужно овладеть башка вспухает
Значит слишком много сразу пихачиш в голову. Надо понемногу, что бы легко и быстро получать результат, который будет приносить радость.

Johnnie
13.09.2016
20:16:50
понял. может потом где-нибудь засуну это, спасибо :) а пока оставлю так, т.к. работает

Страница 436 из 1885

Эта группа больше не существует Эта группа больше не существует