Первое приложение на Yii своими силами
Рубрика: Мелкие заметки на тему Yii
5 Апр. 2009
Знаете многое людей отталкивает (а многих притягивает) в Yii - это штука для генерации кода. Тем кто с таким некогда не работал трудно сначала вникнуть.
В этом "нулевом" уроке я хотел бы рассказать вам что если вы так боитесь функции авто создания кода - то ей не обязательно пользоваться. Пользователям мелкософта действительно придется повозится с настройкой yiic что бы прописать ему пути к php и др. В других уроках я обязательно вам расскажу как это легко сделать, но сейчас статья про то как обойтись без yiic.
---Настройка
Пожалуйста зайдите на сайт Yii и скачайте последнюю версию фреймворка. Сделать это можно на странице downloads. Вы там найдете чтото вроде текста "Source Code: .tar.gz, .zip" (просто нажмите на расширение архива который вы хотите скачать и начнется закачка на ваш компьютер).
После того как Yii загрузилось вам необходимо установить её на ваш WebServer. Сразу скажу что доку предназначена для Win пользователей, но те кто любят линукс могут сделать по аналогии всё точно также только на своём вебсервере. Для того чтобы поднять вебсервер на Windows вы можете использовать XAMP, Denwer и многое другое. Я рекомендую - ZendServer. Но в любом случае для установки Yii какой вебсервер вы используете не так важно.
Я предполагаю что вебсервер на компьютер вы установили. Войдите в папку которая отвечает за localhost (для ZendServer и XAMP это папка htdocs) и скопируйте туда папку с Yii. Теперь вам надо проверить подходит ли ваш вебсервер для работы Yii. Для этого наберите адрес в браузере - http://localhost/yii/requirements/index.php. Если ошибок не увидите и все горит зелёным - значит все отлично. Если нет - тогда вам прийдется разбиратся с возникшими ошибками и возможно переконфигурировать веб сервер.
После этого вам слудет скачать небольшой архив, так сказать шаблон первого приложения на Yii для вас. Оно содержит начальный контроллер и структуру всех папок. Сам архив находится по адресу http://dbhelp.ru/files/yii-project.rar
После того как скачали его - разархивируйте все файлы в каталог localhost на уровень с папкой Yii. После этого войдите в файл index.php и отредактируйте строчку которая указывает путь к Yii фреймворку:
$yii='H:\ZendBETA\Apache2\htdocs\yii\framework\yii.php';
Запуск
После того как вы указали верный путь - можете смело запускать ваше первое приложение на Yii. открываем в браузере http://localhost/ и видим:
Hello world!
Если такого на экране у вас нет - тогда чтото вы проделали не так.
Понимание
Теперь давайте перейдем к пониманию некоторых истин. Я надеюсь что вы знакомы с MVC и уже писали на фреймворке этого типа. Если нет - то не страшно, научитесь. Давайте поймем со старта сразу пару основных правил как у нас получилось Hello World на экране.
- Контроллер и действие (экшин) по умолчанию - site/index. Вы можете это изменить в файле protected/config/main.php. Поэтому если вы ничего не меняли - по умолчанию набрав localhost приложение обратиться к файлу protected/controllers/SiteController.php, а именно к его экшинсу "index"
- Открываем protected/controllers/SiteController.php и видим там:
class SiteController extends CController
{
public function actionIndex()
{
$this->render('index');
}
} - Строчка
$this->render('index')
говорит о том что надо загрузить файл отображения с именем index. Т.к. контроллер у нас с именем site то файл отображения будет взят с protected/views/site/index.php - Заходим в protected/views/site/index.php и видим там написанную мною фразу Hello world.
Всё конечно банально, но понять как что работает на первых порах я думаю поможет.
Если хотите опубликовать этот материал у себя - пожалуйста, разместите ссылку на страницу откуда вы его взяли.
- Сегодня обнаружил что мой бывший сокурсник написал свой некий мод на Yii Blog. Исходные коды я не смотрел, но ... "Yii blog new [update]"
- ... "Перевод : Доработка модели Post"
- Сегодня обнаружил что Sam Dark как и обещал перевел интерисующюю практически всех часть документации про RBAC.
next
Благодаря таким людям - ... "Перевод : Аутентификация и авторизация (RBAC)"

[guest] Гость
Было сказано: Воскресенье, 31 Май 2009
> Пользователям мелкософта действительно придется повозится с
> настройкой yiic что бы прописать ему пути к php и др.
Делов на пять минут.

[adm] zolter
Было сказано: Воскресенье, 31 Май 2009
В принципе да, для тех кто хоть немного знает консоль. Кстати для пользователей windows в случае проблем с настройкой yiic (проблемы с путями к php и тп) советую прочитать тему на форуме http://www.yiiframework.com/forum/index.php/topic,2321.0.html [рус.]

[guest] idle sign
Было сказано: Понедельник, 13 Июль 2009
Zend Server — не слишком ли дорогой совет?
Тимур, пожалуйста, проверяй орфографию и пунктуацию — залог успеха.

[adm] zolter
Было сказано: Понедельник, 13 Июль 2009
Когда я использовал ZendS он был бесплатной бетой. Каковая сейчас его цена - я к сожалению не знаю. Сейчас использую xampp/lampp.
По поводу ошибок, я с вами согласен. Уже давно в новых уроках проверяю их спец. программами но 1-5% все равно проскакивают.

Kros
Было сказано: Вторник, 16 Март 2010
Тимур, спасибо и респект за такую простенькую, но полезную статью! - ОЧЕНЬ помогла понять реализацию этого принципа, везде сколько не читал - сразу столько накладывают функционала, что основу просто не увидеть и всё кажется нереально сложным, и чуть что поменяешь - не пашет всё)), теперь дело пойдёт :)

[guest] Гость
Было сказано: Пятница, 10 Июнь 2011
Тимур, дякую за Вашу роботу!
Дуже не вистачало розуміння мінімального набору файлів для роботи Yіі. Хоча б для того, щоб нормально зрозуміти структуру файлів, їх взаємозв'язки. Крім того, нарешті зможу потренуватися з АR на практиці


