![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
chak |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 24.7.2010 Репутация: нет Всего: нет |
Идея
Работая над админкой своего проекта (админка делается на Bootstrap) обнаружил, что мне очень не хватает возможности прямо из php формировать содержание элементов Bootstap. Например: 1. Наполнять содержания выпадающих списков меня в зависимости от прав пользователя. 2. Наполнять навигационный бар элементами в зависимости от многих факторов, он у меня используется для профайлинга. 3. Количество и разнообразие кнопок очень велико, поэтому для них хотелось бы иметь так же простой способ создания. ... и множество других вещей, так же хотелось формировать прямо в php коде, а не в шаблоне. Осознав это я начал создавать фактически отдельную библиотеку, которую условно назвал Bootsrap.php. Когда были созданы кнопка, выпадающее меня, хлебные крошки, pager, появилась идея выложить наработки на гитхаб. Аналоги Поиски аналогов навели только на http://www.cniska.net/yii-bootstrap/, но эта библиотека мне не понравилась, во-первых привязка к yii, который я не использую, во-вторых конфигурирование элементов с помощью массива, что я не приемлю и о чем напишу ниже. Как я вижу должна выглядеть подобная библиотека? 1. Главное! Кодкомплит должен избавить от необходимости каждый раз смотреть в документацию Bootstap. Как это, будет видно из примеров. 2. Для создания элементов должна использовать цепочка вызовов аля jQuery, а не массивы. Это напрямую связано с предыдущим пунктом. 3. Библиотека должна быть максимально просто в использовании, в идеале что бы не нужно было читать документации и смотреть примеров использования, должно быть достаточно базовых знаний, что может Bootstrap. Опять же все благодаря кодкомплиту и phpdocs. 4. Не смотря на перечисленное у библиотеки должна быть и хорошая документация и примеры. 5. Разумеется не должно быть привязано к какому-то конкретному фреймворку Примеры
На примере тяжело увидеть все прелести такого подхода. Как я писал выше главное удобство это кодкомплит в IDE (у меня PHPStorm, но проверю чтобы все работало и в других IDE). Кроме того что кодкомплит по названию методов подсказывает вам какие возможности у вас есть, так еще каждый метод снабжен phpdoc'ом где не только описано его предназначение, но и предназначение каждого атрибута и его тип. Кроме банальных string и bool, есть типы вроде использовано нами выше DropdownMenu, что однозначно вам скажет, что методу кнопки addDropdownMenu() нужно скормить именно объект выпадающего списка. Проблемы 1. Главная! У меня плохо с английский, поэтому все будет на русском и phpdocs и документация. Конечно же в идеале должно быть еще на английском, но так будет только если кто-то возьмется и переведет, либо может быть жену придется привлечь. 2. Возможно на все запланированное просто не хватит времени, у меня строго ограниченное время на этот проект и если не уложусь придется бросить на неопределенный срок. Вопросы Хотелось бы узнать в первую очередь не делаю ли я очередной велосипед? Напишите пожалуйста если вы знаете аналоги. Нужно ли вам это, будете ли использовать? И какие пожелания или несогласия с моими подходами у вас есть? Это сообщение отредактировал(а) chak - 23.6.2013, 12:31 |
|||
|
||||
Sanchezzz |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Лучше всего нативный html+js для этих целей, больше гибкости и наглядно, и главное быстрей работает, в местах даже меньше кода)
Если и нужно вывести список пунктов меню то достаточно в слой, сделать вывод массива через цикл
Зато придется смотреть вашу документацию. Icon::TRASH итд мне не запомнить придется смотреть вашу документацию Какие методы можно использовать, какие параметры передавать можно, на IDE не смотрим. Прелестей в общем не вижу не все используют большие тяжелые IDE, я вот в np++ использую
Нет, жизни радости это мне не придаст. У меня уже давным давно в папочке для себя лежит сохраненный сайт bootstrap в качестве документации и с примерами.
В DropMenu можно сделать автоматически определять URL сайта и пункта меню и добавлять класс active Вы главное делайте а желающих использовать или не использовать, найдутся. Это сообщение отредактировал(а) Sanchezzz - 22.6.2013, 13:06 -------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
||||||
|
|||||||
chak |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 24.7.2010 Репутация: нет Всего: нет |
Sanchezzz, Если np++ то коненчо плюсов нет одни минусы.
Делать сделаю так как самому нужно. Как будет не стыдно людям показать выложу на гитхаб |
|||
|
||||
SergV |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 197 Регистрация: 4.8.2006 Где: Германия Репутация: нет Всего: 1 |
chak, возможно будет правильным выложить на гитхабе сразу, так как если идея кому понравится, возможно к ней присоединятся, и помогут с разработкой.
Я лично сейчас тоже работаю над админкой с bootstrap, правдо на базе yii, и сказать чесно, не отказался бы от такого. Хотя я пока не проверял как работает аналог(тот что по ссылке), и работает ли в NetBeans, так как по привычке пока пользую np++. Надо будет глянуть... Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |