Есть ли какие-либо подходы к установке в поле модели? Я не хочу использовать свойство «label» в помощнике формы.CakePHP: метка поля в модели
ответ
Вы хотите установить значение метки? Это делается в представлении, но, конечно, значение может исходить от контроллера/модели. Как это:
echo $this->Form->input('title', array(
'label' => $titleLabel,
));
вы также можете отключить метку элемента:
echo $this->Form->input('title', array(
'label' => null,
));
Пожалуйста, убедитесь, что я правильно понял это, вы хотите установить метку поля в модели, а не использовать хелпер формы?
Это нарушает базовую архитектуру MVC. Хотя Cake является гибким в некоторых вещах, я не думаю, что это возможный вариант. Я также не понимаю, почему вы хотите это сделать - есть ли причина, по которой вы не хотите использовать свойство label в помощнике формы?
Основная проблема заключается в том, что метка для формы является частью уровня представления, а модель представляет данные. Таким образом, невозможно (и я не могу думать о ситуации, когда это имеет смысл ...), чтобы назначить метку в поле данных, которое затем будет использоваться всякий раз, когда это поле будет выводиться.
Если я не понял ваш вопрос, уточните пожалуйста.
Не 100% уверен, но я думаю, что вы могли бы искать Model::displayField
я предлагаю U непосредственно использовать помощника u want .. bcos $ form-input() создает div .. labels.
Мне лично пришлось отсеять это на каждой строке
с непосредственным помощником как
$ form-> текст() $ форма-> TextArea() $ форма-> выберите()
и может держать код намного чище.
Примечание: $ form-> Вводится экономит время при использовании права ...
Что я делаю, это создание конвенции в моих моделях. Я добавил публичный атрибут под названием «fieldLabels» ко всем моделям, чтобы назначать текстовые метки по умолчанию для общих форм.
Пример:
class MyModel extends AppModel {
// ...
public $fieldLabels = array(
'username' => 'User name',
'email' => 'e-mail address',
'phone' => 'Phone No.',
);
// ....
}
Затем я перехожу вокруг этикетки с точки зрения и использовать дополнительный параметр для ввода, так как sibidiba сказал:
echo $this->Form->input('title', array(
'label' => $fieldLabels['title'] . ': ',
));
В случае, если я нужны специальные этикетки, я В качестве исключения обрабатывается каждый случай. Конечно, если вы хотите интернационализации, это совсем другая тема.
- 1. Программная установка поля внутри модели в CakePHP
- 2. проверка в модели cakephp сравнить два поля
- 3. CakePHP 3.0 - метка вспомогательной формы из определения поля
- 4. CakePHP: правила проверки модели, поля формы, ===
- 5. cakephp: проверка модели на основе другого поля
- 6. CakePHP найти поля для родственной модели
- 7. проверка поля файла cakephp
- 8. Проверка модели в CakePHP
- 9. Функция CakePHP в модели
- 10. CakePHP: Модели в AppController
- 11. Правило модели Cakephp
- 12. Cakephp указывает сохраненные поля?
- 13. выберите поля из двухуровневой родительской модели в cakephp
- 14. Как проверить поля формы без имени модели в cakephp
- 15. Cakephp Autoconvert find() поля?
- 16. CakePHP не проверяет поля
- 17. Grab имя метка конкретного поля
- 18. Пользовательская метка CakePHP для параметров ввода формы
- 19. CakePHP: динамическая форма поля
- 20. Реакция модели модели Swagger: альтернативная метка для LocalDate в SpringFox
- 21. заказ cakephp другой моделью поля в ассоциации
- 22. CakePhp: Ассоциации на лету с использованием переименованного поля модели?
- 23. CakePHP - Проверка поля, используя значения из другой модели
- 24. CakePHP как добавить данные из другого поля родственной модели
- 25. не могу получить поля из скрываемой модели cakephp
- 26. Различные модели в плагине CakePHP
- 27. Проблема проверки модели в Cakephp
- 28. Сортировки в CakePHP другой модели
- 29. Отменить все модели в CakePHP
- 30. Сравнивая значения в модели cakephp