Създайте първото си приложение!
Запознайте се с рамката Nette, като създадете прост блог с коментари. Да започнем!
След първите две глави ще имате свой собствен работещ блог и ще сте готови да публикувате страхотни публикации, въпреки че функциите ще бъдат доста ограничени след приключването на тези две глави. За да направите нещата по-приятни за вашите потребители, трябва да прочетете и следващите глави и да продължите да подобрявате приложението си.
Този урок предполага, че сте завършили документа Инсталиране и успешно сте настроили инструментите си. Предполага се също, че разбирате обектно-ориентираното програмиране в PHP.
Моля, използвайте PHP 8.1 или по-нова версия. Можете да намерите пълното приложение в GitHub.
Страницата за добре дошли
Нека започнем със създаването на нов проект в директорията
nette-blog
:
composer create-project nette/web-project nette-blog
В този момент трябва да се стартира началната страница на уеб проекта. Опитайте я, като отворите браузъра си и отидете на следния URL адрес:
http://localhost/nette-blog/www/
и ще видите началната страница на рамката:
Приложението е готово и вече можете да започнете да правите промени в него.
Ако имате проблеми, можете да опитате няколко съвета.
Съдържание на уеб проекта
Нашият проект има следната структура:
nette-blog/ ├── app/ ← каталог приложения │ ├── Core/ ← основни необходими класове │ ├── UI/ ← презентатори, шаблони и др. │ │ └── Home/ ← Каталог на водещите │ └── Bootstrap.php ← загрузочный класс Bootstrap ├── bin/ ← скрипты для командной строки ├── config/ ← конфигурационные файлы ├── log/ ← журналы ошибок ├── temp/ ← временные файлы, кэш, … ├── vendor/ ← библиотеки, установленные через Composer │ └── autoload.php ← автозагрузка библиотек, установленных Composer └── www/ ← общая папка — единственное место, доступное из браузера └── index.php ← начальный файл, запускающий приложение
Директорията www
е предназначена за съхранение на изображения,
JavaScript, CSS и други публични файлове. Това е единствената директория,
достъпна директно от браузъра, така че тук можете да посочите
коренната директория на вашия уеб сървър (можете да я настроите в Apache,
но нека го направим по-късно, тъй като сега това не е важно).
Най-важната директория за вас е app/
. Там ще намерите файла
Bootstrap.php
, в който ще намерите клас, който зарежда рамката и
конфигурира приложението. Той активира автозадаващото
устройство и настройва дебъгъра и маршрутите.
Почистване
Уеб проектът съдържа начална страница, която можем да премахнем – не
се колебайте да замените съдържанието на файла app/UI/Home/default.latte
с
текста Hello world!
.
Tracy (дебъгер)
Изключително важен инструмент за разработка е дебъгер, наречен Tracy. Опитайте се да направите
някои грешки във вашия файл app/UI/Home/HomePresenter.php
(например да
премахнете къдравата скоба от дефиницията на класа HomePresenter) и вижте
какво ще се случи. Ще се появи страница с червен екран и разбираемо
описание на грешката.
Трейси ще ви помогне значително да откриете грешките. Обърнете внимание и на плаващата лента Tracy Bar в долния десен ъгъл, която ви информира за важни данни по време на работа.
В производствен режим Tracy, разбира се, е деактивирана и не разкрива
никаква чувствителна информация. Всички грешки се записват в
директорията log/
. Просто опитайте. Във файла app/Bootstrap.php
намерете следната част от кода, коментирайте реда и променете
параметъра за извикване на метода на false
, така че да изглежда по
следния начин
...
$this->configurator->setDebugMode(false);
...
Когато уебстраницата се опресни, червеният екран на страницата ще се промени на удобно за потребителя съобщение:
Сега погледнете в директорията log/
. Там ще намерите дневник на
грешките (във файла exception.log), както и страница за грешки (записана в HTML
файл с име, започващо с exception
).
Изтрийте отново реда // $configurator->setDebugMode(false);
. Tracy автоматично
активира режима за разработка в средата localhost
и го деактивира
другаде.
Сега можем да поправим грешката и да продължим да разработваме нашето приложение.
Изпратете благодарности до
Ще ви покажем един трик, който ще зарадва авторите на софтуер с отворен код. Можете лесно да присвоите звезда в GitHub на библиотеките, които използват вашия проект. Просто въведете в конзолата:
composer thanks
Опитайте!