|
|
|
| Всем привет! Подскажите, можно ли в Smarty организовать расположение полей ввода в виде таблицы, т.е. первая строка будет представлять названия столбцов, а последующие строки будут содержать поля ввода, соответствующие названиям столбцов? Если такое возможно, то где про это можно прочитать? Или приведите, пожалуйста, пример. | |
|
|
|
|
|
|
|
для: avs
(07.04.2009 в 13:32)
| | Можно. http://www.smarty.net/manual/ru/
p.s. Делайте все на php, всмарти передавайте переменные.
Иначе теряется весь смысл в разделение логики от дизайна | |
|
|
|
|
|
|
|
для: ols
(07.04.2009 в 13:54)
| | Не понятно. Что значит на РНР в этом случае? | |
|
|
|
|
|
|
|
для: sim5
(07.04.2009 в 14:15)
| | >Не понятно. Что значит на РНР в этом случае?
Имею виду то, что весь алгоритм сделать на php, а в шаблоны передавать только переменные.
Хотя не совсем понятно что хотел автор.
Откуда берется таблица. Smarty в данном случае отношение мало имеет. По сути таблица делается на html. | |
|
|
|
|
|
|
|
для: ols
(07.04.2009 в 14:46)
| | Вот именно, это чистый HTML, а в Смарти можно сделать проход и вывести необходимое. | |
|
|
|
|
|
|
|
для: ols
(07.04.2009 в 14:46)
| | Автор хочет соорудить плагин к Smarty.
для avs
Делаете блоковый плагин. Скажем table (файл smarty/plugins/block.table.php), передаёте необходимые параметры (названия столбцов и т.д.) и строите в этом блоке таблицу.
Читать тут: http://www.smarty.net/manual/ru/plugins.php | |
|
|
|
|
|
|
|
для: Axxil
(07.04.2009 в 16:45)
| | А что передавать? Одно дело поля (кстати что еще за поля), а другое дело, это сколько строк записей будет у полей? Возможно тут JS нужен с динамическим добавлением полей, а не Смарти. | |
|
|
|
|
|
|
|
для: sim5
(07.04.2009 в 16:58)
| | Первый передаваемый параметр, например, массив заголовков столбцов выборки вида:
<?$array = array('name'=>'Имя','surname'=>'Фамилия');?>
|
Второй параметр непосредственно массив с данными выборки. А в плагине происходит построение этой таблице на основе полученных данных.
Но это для совсем простой таблицы. Если в полях, напрмер, надо размещать ссылки, то придётся добавлять ухищрения с зарезервированными типами столбцом:
<?$array = array('name'=>'Имя',
'surname'=>'Фамилия',
'st-edit'=>'/admin/user/edit/?user_id=$user_id',
'st-delete'=>'/admin/user/delete/?user_id=$user_id');?>
|
Где подстановка $user_id заменяется на соответствующий id пользователя из массива с данными.
Как показывает практика, для подавляющего большинства списков в админе такой подход достаточно удобен. | |
|
|
|
|
|
|
|
для: Axxil
(08.04.2009 в 14:45)
| | Да знаю я то, что вы говорите.... я не понимаю, что автору надо - либо вывести форму для редактирования данных из базы, либо это некая форма для произвольного ввода. В первом и втором случае это будут совсем разные вещи. | |
|
|
|
|
|
|
|
для: sim5
(08.04.2009 в 15:10)
| | Автор пишет: "т.е. первая строка будет представлять названия столбцов"
Нужно сделать плагин, в котором достаточно будет задать название таблицы БД и список названия столбцов, чтобы автоматически получить форму редактирования.
Причём тут форма произвольного ввода? | |
|
|
|
|
|
|
|
для: Axxil
(08.04.2009 в 15:51)
| | Вот ему тогда и советуйте :) | |
|
|
|