Сайты по CodeIgniter

18 февраля 2008 г. Просмотров: 11579 RSS 27
MaxSite CMS » CodeIgniter

CodeIgniter - это PHP-framework. Считается одним из самых лучших на сегодняшний день. На мой же взгляд, самое важное, что CodeIgniter не застявляет жестко следовать какой-то своей структуре. Все это дает возможность разработчику в комплекте с существующим немалым функционалом CodeIgniter получить и необходимую гибкость. Делая свою CMS, я многократно в этом убеждался.

Но как оказалось, ресурсов по CodeIgniter не так и много. А еще меньше конкретных примеров использования. Поэтому я приведу ссылки на тех, кто занимается CodeIgniter. Возможно они вам тоже пригодятся.

Сайт simplecoding.org Стаценко Владимира. Много примеров и решений по CodeIgniter. насколько я понимаю, то Владимир какие-то примеры берет из хелпа (кстати очень неплохой!) и переводит это все на практические рельсы. И кроме всего прочего статьи комментируются и здесь тоже можно подчерпнуть полезные решения. Мне так удалось именно благодаря комментаторам решить несколько вопросов в своей CMS. smile

Следующий сайт, на который следует обратить внимание - Хроники php-разработчика. Тоже очень полезный ресурс, правда расчитанный на более подготовленного пользователя CodeIgniter.

Блог TermiT’s Blog Потапова Геннадия. Тут не так много информации по CodeIgniter, но всё-равно она может пригодиться. Пожалуй самое важное, что сделал Геннадий, так это собрал на одной странице ссылки на сайты по CodeIgniter.

Еще один блог Тыманчи Ыргын, где пошагово описан процесс создания полноценного блога на CodeIgniter. Опять же написано очень легко, подробно. Да и готовые файлы прилагаются.

К сожалению пока у CodeIgniter нет полноценного русского форума поддержки, но зато есть гугловская группа. Так что при желании можно вопрос задать в ней.


twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru friendfeed.com google.com yandex.ru
Комментариев: 27
  1. Кстати, очень приятно на англоязычном форуме.

  2. 2008-02-18 в 20:51:30 | mr.petruccio#2

    Спасибо, самому приходиться иметь дело с CodeIgniter, интересно будет почитать

  3. 2008-02-19 в 00:40:41 | Владимир#3

    Спасибо за ссылку на блог Тыманчи Ыргын.

    Я его как-то ухитрился пропустить grin , а судя по названиям информация интересная. Почитаю.

  4. Максим, вот Вы и создайте первый сайт по CodeIgniter на своей cms, первое хорошо потестите, а во вторых всем будет яркий пример по функционалу.

  5. 2008-02-19 в 15:57:02 | Максим#5

    Дело в том, что CodeIgniter не нуждается в описании функционала. У него есть отличный хелп и любой, кто имеет какие-то знания в PHP, может после недолгого изучения сделать что-то своё. Чего реально не хватает, так это примеров реализации. Для меня самого стало большой неожиданностью, что CodeIgniter не просто упрощает, а значительно упрощает программирование. Например я несколько дней «готовился» к подключению xmlrpc к CMS, представляя сколько мне придется программировать(!), а реально же получилось всего несколько строк кода.

    Но вообще я хочу сделать тестовый сайт на своей CMS. Как раз буду смотреть что еще нужно добавить в минимальную комплектацию системы, а что можно вынести на уровень расширений.

  6. На англоязычном примеров много. И обсуждение бурное.

    Есть также в русской гугль-группе прилично.

    Так вообще я бы не отказался от чего-то вроде http://cake-php.ru/. Если найдутся желающие делиться информацией, можно будет скооперироваться и созадть нормальное русскоязычное коммьюнити, ну или хотя-бы коллективный CI вики-блог.

  7. То Максим:

    а как вобще продвигается создание cms? демку в онлайн ставить будете? было бы очень интересно посмотреть smile

    насчёт Сodeigniter:

    фреймворк действительно очень не плохой и предоставляет множество возможностей для разработчика. Но на мой взгляд, это не главное его преимущество. дело в том что он очень легко рассширяется и интегрируется в другие проекты имеет низкий порог вхождения, а так же сравнительно быстро работает.

    ;)

  8. 2008-02-19 в 18:00:49 | Максим#8

    Я в начале хотел именно на cake сделать, но провозился несколько дней, так и не осилил... Для меня он как черный ящик - нет ясности того, что в нем происходит. C CodeIgniter, наоборот все оказалось просто и ясно. Хотя, конечно какие-то вопросы остались, вроде настройки роутера (пока сделал бульдозером - в .htaccess прописал основной контролер).

    Ход работ я описываю вот здесь: http://code.google.com/p/maxsite/wiki/roadmap

    Выкладывать, да буду (как минимум для разработчиков). Просто сейчас нужно всё-таки доделать самое основное до минимального рабочего сайта. Дальше уже коллективно отлинчевать, исправить и двигаться дальше. :wink:

  9. а что за проблема с роутером? поделитесь может чего придумаем ;)

  10. Я таки разобрался с внутренностями Cake. Так же наворочено, как и в CI.

  11. 2008-02-19 в 19:02:53 | Максим#11

    Ну проблема такая. Сейчас .htaccess такой:

    RewriteEngine on
    RewriteBase /
    RewriteCond $1 !^(index\.php|images|robots\.txt)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /index.php/maxsite/$1 [L,QSA]

    То есть управление в любом случае передается на контролер maxsite. Мне кажется, что это как-то некрасиво и было бы правильней сделать это через роутер с расчетом на то, что разработчик сможет (опять же через правило роутера) придумать свой контролер вместо моего.

    Далее. Нужно придумать как-то сделать через роутер дефолтный метод для каких-то типов данных. Вот пример: сайт/page/23 - метод «page», параметр «23». И вот если будет адрес сайт/23, то управление должно автоматом переходить к методу «page».

  12. 2008-02-19 в 19:29:57 | Максим#12

    Добавлю. Последний вариант роутера был такой:

    $route['([0-9A-z]+)'] = "maxsite/$1";
    $route['([0-9A-z]+)/([0-9A-z]+)'] = "maxsite/$1/$2";
    $route['([0-9A-z]+)/([0-9A-z]+)/([0-9A-z]+)'] = "maxsite/$1/$2/$3";

    (Параметров по-идее может передаваться больше.)

  13. А может так?

    $route[':any'] = "maxsite";

    и дальше в самом контроллере _remap() и в нём при помощи

    $this->uri->segment() определять чего грузить? LOL

  14. 2008-02-19 в 22:29:46 | Максим#14

    Так работать не будет. _remap() всегда будет получать дефолтный метод index. Поэтому и остается только разбирать uri, чем теряется автовыполнение методов в CodeIgniter. Смысл лишаться такой возможности?

    У меня _remap() используется для page_404 - код я у Владимира в комментариях приводил. В принципе через него можно сделать дефолтным и page... Подумаю, тут зависит от того, как будут короткие ссылки организованы. :idea:

  15. Поэтому и остается только разбирать uri...

    Ну я это в принципе и предложил smile

    Идея появилась и гуд.

    Кстати кто тебе мешает замутить библиотеки для проверок и вызывать их

    в _remap() ?

  16. 2008-02-19 в 22:45:13 | Максим#16

    Ну примерно так и сделано. ;) Если метод (из uri) не отработал, то выполняется page_404() и уже в нем смотрится файл с именем метода-uri. Если есть - подключается. Если нет, то выводится сообщение 404.

  17. 2008-02-19 в 22:46:44 | Владимир#17
    сайт/page/23 - метод «page», параметр «23». И вот если будет адрес сайт/23, то управление должно автоматом переходить к методу «page».

    А если метод будет другой? Т.е. можно ли по значению параметров или их количеству определить нужный метод?

    Вместо

    $this->uri->segment()

    удобнее использовать

    $pars = $this->uri->segment_array();
    call_user_func_array(array($this, $method), $pars);

    (если нужно просто передать параметры)

  18. 2008-02-19 в 23:05:30 | Максим#18

    Метод, кстати может, действительно быть другим. Задумка такая. Есть куча типов страниц - они определяются методом (page, category, tag и т.д.). У этих страниц может быть короткая ссылка (slug), так же как это задается в WordPress. Так вот, когда явно не указывается метод, то нужно будет по этому slug найти «свой» метод. Само по себе это не сложно - один запрос к БД...

    Да, через page_404() это сделаю... :idea:

  19. кстати, вопрос ты Matchbox используешь? просто судя по задумке он бы тебе пригодился ;)

    matchbox

  20. 2008-02-20 в 00:52:11 | Владимир#20
    один запрос к БД...

    Похоже, так и придется делать. Если пользователи смогут менять короткую ссылку как в WP, т.е. изменять количество сегментов, то ИМХО самый логичный вариант - запрос к БД + remap.

    Плохо представляю как это можно сделать с помощью роутера или htaccess (разве что перезаписывать их при изменении ссылок или формировать настройки роутера по данным из БД)

  21. 2008-02-24 в 20:32:58 | Евгений#21

    Есть сайт с документацией на русском языке http://code-igniter.ru

  22. Никогда об этом не слышал. Было бы не плохо побольше осветить эту тему. Буду благодерен за подробную информацию.

  23. Недавно сделал сайт для сообщества - codeigniter.org.ru.

    Сообщество пока не подключилось, веду сам.

  24. 2008-04-11 в 16:30:42 | mr.petruccio#24

    начинаем присоединятся

  25. 2008-06-07 в 15:36:09 | Diz A Torr#25

    Можно наверное добавить еще один сайт.

    Вот тут вот, собираюсь публиковать материалы о программировании на РНР с использованием CodeIgniter и о JQuery. Оба этих фреймворка идеально подходят друг к другу.

    http://unicorn.e-nk.ru/doku.php/personal:start

    Публиковать собираюсь исключительно персональные материалы, кроме того если кто хочет - может присоединится к редактированию, это вики.

    Пока выложил одну статью, об использовании супер модели.

  26. Смотрел сравнительные характеристики фреймворков и обнаружил, что у CI не поддерживаются модули. Может я с терминологией немного не владах?

    Вот сайт.

    phpframeworks . com

    Я выбираю фреймворк, и как раз хотел изучить CI из-за наличия документации, но что здесь имеется в виду под модулями? Почему написано, что они не поддерживаются. Пока непонятно.

  27. Codeigniter - очень рекомендую.

    Переделывала одно из написанных веб-приложений для отслеживания отправленных и полученных заказов для компании, и писала с нуля для локальной сети каталог клиентских заказов с базой данной на более 50тыс заказов за несколько последних лет, поиск, пополнение, редактирование и проч. CI, Jquery, AJAX.

    Также дописываю еще один небольшой сайт CI + Jquery - никаих проблем.

    В CakePHP так и не смогла пробраться сквозь булочки и пирожки, кроме восторженных истерик больше не нашла никаких инструкций.

    Codeigniter постоянно обновляет свое очень подробное и более чем понятное руководство. (Если вы занимаетесь программированием то английский язык это ваш хлеб и не читать по английски - это по крайней мере странно.)

    Очень удобно реализованы sql запросы и очень хорошо реализована модель MVC - несказанно облегчает жизнь.

    Очень удобна локализация - всего лишь один языковой файл с константами и ваше приложение заговорит на любом языке.

    http://bambooinvoice.org/ - тут неплохой пример реализации, хотя на мой взгляд код и не очень аккуратный, можно скачать, установить и посмотреть внутренности.

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена

Имя и сайт используются только при регистрации

Зарегистрируйтесь, чтобы получать уведомления о новых комментариях по email.

Авторизация Войти через loginza

(обязательно)