template.php
Отсылка формы для записи выполняется function photo_node_form_submit($form, &$form_state)
попытки переопределить валидатор ни к чему не приводят, а надо выполнить собственную валидацию и вернуться, если надо, назад
народ подскажите, как выполнять валидацию cck в phptemplate
"julia_sib" wrote:
Отсылка формы для записи выполняется function photo_node_form_submit($form, &$form_state)
Вы уж определитесь что вы хотите поменять - валидацию или сабмит формы, а то из вопроса и последующих ваших постов не совсем ясно. На случай навешивания своих валидаторов есть нормальный такой модуль validation_api
надо выполнить валидацию и в сабмите обработать для подготовки. Нельзя в программе определить валидатор. Для своего модуля все работает, но в template.php ничего
может есть другой способ
Как выполнить редирект назад на запоненную форму c отменой сохранения формы из _submit
Никто без костылей в виде доп модулей не обходился что ли.
почему левые функции, есть cck, шаблон задается в template.php
А как валидацию выполнить непонятно. И не просто проверку текста в поле, а залесть в базу, использовав 2 поля формы. Т.е. вопрос, как переопределить стандатный валидатор, как назвать. photo_node_form_validate и т.п. не дают результата
пришлось извратиться и добавить свой валидатор в модуле filefield, который добавляет свой валидатор.
Криво, но другого способа не нашла. А так все работает
я не предполагала, что столкнусь с таким геммороем в друпале как валидация. Проект написан, а валидации путной не было. Это первый крупный проект. Переделывать все под модуль времени нет.
Валидация - это не геморрой, геморрой - это как вы решили проблему.
Правильное решение - модуль из четырех строчек:
фанкшн модуль_форм_альтер(...) {
иф (форм_айди == 'нужная_форма') {
форм['валидейт'][] = 'название функции';
}
}
И всё. Что под это надо переделывать, сколько на это надо времени?
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
Комментарии
может кто-нибудь подсказать, всю голову сломала. Как выполнить валидацию
phptemplate это шаблонизатор, какое отношение он имеет к валидации данных?
template.php
Отсылка формы для записи выполняется function photo_node_form_submit($form, &$form_state)
попытки переопределить валидатор ни к чему не приводят, а надо выполнить собственную валидацию и вернуться, если надо, назад
Вы уж определитесь что вы хотите поменять - валидацию или сабмит формы, а то из вопроса и последующих ваших постов не совсем ясно. На случай навешивания своих валидаторов есть нормальный такой модуль validation_api
надо выполнить валидацию и в сабмите обработать для подготовки. Нельзя в программе определить валидатор. Для своего модуля все работает, но в template.php ничего
и каким образом его к конкретной форме прикрутить В mytheme_photo_node_form($form) он игнорируется.
может есть другой способ
Как выполнить редирект назад на запоненную форму c отменой сохранения формы из _submit
Никто без костылей в виде доп модулей не обходился что ли.
костыли - это пытаться возложить на шаблонизатор левые функции, к которым он никакого отношения не имеет
почему левые функции, есть cck, шаблон задается в template.php
А как валидацию выполнить непонятно. И не просто проверку текста в поле, а залесть в базу, использовав 2 поля формы. Т.е. вопрос, как переопределить стандатный валидатор, как назвать. photo_node_form_validate и т.п. не дают результата
пришлось извратиться и добавить свой валидатор в модуле filefield, который добавляет свой валидатор.
Криво, но другого способа не нашла. А так все работает
Левые - потому что такие вещи (подмена/добавление валидатора) через hook_form_alter делаются, причем не просто делаются, а делаются в две строчки.
шаблон а не логика работы. чем вам свой модуль не угодил?
я не предполагала, что столкнусь с таким геммороем в друпале как валидация. Проект написан, а валидации путной не было. Это первый крупный проект. Переделывать все под модуль времени нет.
Валидация - это не геморрой, геморрой - это как вы решили проблему.
Правильное решение - модуль из четырех строчек:
фанкшн модуль_форм_альтер(...) {
иф (форм_айди == 'нужная_форма') {
форм['валидейт'][] = 'название функции';
}
}
И всё. Что под это надо переделывать, сколько на это надо времени?
пыталась, но все что добавляется в template.php не срабатывает. модуль_форм_альтер(...) т.е. phptemplate_форм_альтер(...) игнорируется
жесть о_О как будто в стену говоришь
ага, жесть, когда друпал тупо все игнорирует
попробуйте отключить модуль noob_ignore
ок, поразбираюсь
валидация моим способом заработала, но буду после искать правильный способ
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
попробуйте еще раз
Вы что не поняли- это был диалог одного юзера.
пробовать уже некога (финальный день), я нашла способ, хоть извратный, но работающий. Если найду решение, то напишу