Модель выбора списка
класс ModelChoiceList расширяет ObjectChoiceList
Список выбора для выбора объектов на основе модели Propel.
Методы
| __construct(string $class, string $labelPath = null, array|Traversable $choices = null, ModelCriteria $queryObject = null, string $groupPath = null, array|ModelCriteria $preferred = array(), PropertyAccessorInterface $propertyAccessor = null, string $useAsIdentifier = null) Конструктор. | ||
| массив | getChoices() Возвращает список выборов | |
| массив | getValues() Возвращает значения для выборов | |
| массив | getPreferredViews() Возвращает представления выбранных элементов в виде вложенного массива, где ключами верхнего уровня являются группы выбора. | |
| массив | getRemainingViews() Возвращает представления элементов выбора, которые не являются предпочтительными, в виде вложенного массива, где ключами верхнего уровня являются группы выбора. | |
| массив | getChoicesForValues(array $values) Возвращает выборы, соответствующие заданным значениям. | |
| массив | getValuesForChoices(array $models) Возвращает значения, соответствующие заданным выборам. | |
| массив | getIndicesForChoices(array $models) устарело Возвращает индексы, соответствующие заданным выборам. | |
| массив | getIndicesForValues(array $values) устарело Возвращает индексы, соответствующие заданным значениям. | |
| строка | getClass() Возвращает имя класса модели. |
Подробности
__construct(string $class, string $labelPath = null, array|Traversable $choices = null, ModelCriteria $queryObject = null, string $groupPath = null, array|ModelCriteria $preferred = array(), PropertyAccessorInterface $propertyAccessor = null, string $useAsIdentifier = null)
Конструктор.
Параметры
| строка | $class | Полное имя класса модели для загрузки. |
| строка | $labelPath | Путь к свойству, используемому для меток выбора. Значение получается путем вызова геттера для объекта. Если путь равен NULL, вместо этого используется метод __toString() объекта. |
| массив|Traversable | $choices | Массив выборов. Выборы также могут быть представлены иерархией неограниченной глубины. Иерархии создаются путем создания вложенных массивов. Заголовок под-иерархии может храниться в ключе массива, указывающем на вложенный массив. Верхний уровень иерархии также может быть объектом \Traversable. |
| ModelCriteria | $queryObject | Запрос для получения данных модели из базы данных. |
| строка | $groupPath | Путь к свойству, используемому для группировки выборов. Разрешено только если выборы заданы как плоский массив. |
| массив|ModelCriteria | $preferred | Предпочтительные элементы данного выбора. Либо массив, если задан $choices, либо ModelCriteria, который будет объединен с $queryObject. |
| PropertyAccessorInterface | $propertyAccessor | Граф рефлексии для чтения путей свойств. |
| строка | $useAsIdentifier | пользовательский уникальный столбец (например, slug), используемый вместо первичного ключа. |
Исключения
| MissingOptionsException | В случае, если параметр $class пуст. |
| InvalidOptionsException | В случае, если класс запроса не найден. |
См. также
| \Symfony\Bridge\Propel1\Form\Type\ModelType | Как использовать предпочтительные выборы. |
массив getChoices()
Возвращает список выборов
Значение возврата
| массив | Выборы с их индексами в качестве ключей |
массив getValues()
Возвращает значения для выборов
Значение возврата
| массив | Значения с соответствующими индексами выбора в качестве ключей |
массив getPreferredViews()
Возвращает представления выбранных элементов в виде вложенного массива, где ключами верхнего уровня являются группы выбора.
Пример:
Значение возврата
| массив | Вложенный массив, содержащий представления с соответствующими индексами выбора в качестве ключей на самых нижних уровнях и названиями групп выбора в качестве ключей более высоких уровней |
массив getRemainingViews()
Возвращает представления элементов выбора, которые не являются предпочтительными, в виде вложенного массива, где ключами верхнего уровня являются группы выбора.
Пример:
Значение возврата
| массив | Вложенный массив, содержащий представления с соответствующими индексами выбора в качестве ключей на самых нижних уровнях и названиями групп выбора в качестве ключей более высоких уровней |
массив getChoicesForValues(array $values)
Возвращает выборы, соответствующие заданным значениям.
Выборы могут иметь любой тип данных.
Выборы должны возвращаться с теми же ключами и в том же порядке, что и соответствующие значения в заданном массиве.
Параметры
| массив | $values | Массив значений выбора. Несуществующие значения в этом массиве игнорируются |
Значение возврата
| массив | Массив выборов с возрастающими численными ключами, начинающимися с 0 |
массив getValuesForChoices(array $models)
Возвращает значения, соответствующие заданным выборам.
Значения должны быть строками.
Значения должны возвращаться с теми же ключами и в том же порядке, что и соответствующие выборы в заданном массиве.
Параметры
| массив | $models |
Значение возврата
| массив | Массив значений выбора с возрастающими численными ключами, начинающимися с 0 |
массив getIndicesForChoices(array $models) устарело
устарело
Возвращает индексы, соответствующие заданным выборам.
Индексы должны быть целыми числами больше нуля или строками, принятыми {@link FormConfigBuilder::validateName()}.
Индекс "заполнитель" зарезервирован внутри.
Индексы должны возвращаться с теми же ключами и в том же порядке, что и соответствующие выборы в заданном массиве.
Параметры
| массив | $models |
Значение возврата
| массив | Массив индексов с возрастающими численными ключами, начинающимися с 0 |
массив getIndicesForValues(array $values) устарело
устарело
Возвращает индексы, соответствующие заданным значениям.
Индексы должны быть целыми числами больше нуля или строками, принятыми {@link FormConfigBuilder::validateName()}.
Индекс "заполнитель" зарезервирован внутри.
Индексы должны возвращаться с теми же ключами и в том же порядке, что и соответствующие значения в заданном массиве.
Параметры
| массив | $values | Массив значений выбора. Несуществующие значения в этом массиве игнорируются |
Значение возврата
| массив | Массив индексов с возрастающими численными ключами, начинающимися с 0 |
строка getClass()
Возвращает имя класса модели.
Значение возврата
| строка |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Bridge/Propel1/Form/ChoiceList/ModelChoiceList.html