Съдържание
Заявления, направени в Ларавел съдържат два много важни елемента при анализ на тяхната структура, един от тях е контролериТова са тези, които ни позволяват да изпращаме съдържанието до изгледите, в допълнение към управлението на потока на нашето приложение.Вторият важен елемент е маршрутиС тях, когато получаваме заявки в нашето приложение, можем да посочим начина за проследяване или изпълнение на действия директно независимо от контролера. Въпреки че могат да работят отделно, ние виждаме най -добри резултати, когато допълваме и двата раздела на нашето приложение.
За да създадем контролер, просто трябва да създадем клас, който наследява от базовия клас, който Ларавел достъпни за нашите контролери, този клас е BaseController, този базов клас съдържа само метод, който е много важен, тъй като той е този, който определя как трябва да се предават данните на изгледите.
След като нашият контролер бъде генериран, във файла routes.php Можем да определим според заявката на потребителя какво действие на контролера трябва да изпратим като отговор, дори можем да използваме няколко метода HTTP в тази точка. Нека да видим примерен код, в който изграждаме основен контролер:
Както можем да видим, ние сме дефинирали няколко действия, сега следващото нещо, което трябва да направим, е, че потребителят има достъп до тези действия, за това създаваме съответните маршрути:
Route :: get ('users', 'UsersController @ actionIndex'); Route :: get ('users / envelope', 'UsersController @ actionAbout');
С това вече, когато потребителят има достъп чрез URL адрес и място на потребителите ще имат достъп до първия метод и когато поставите потребители / върху него ще имат достъп до втория метод, както виждаме е доста прост.
Има обаче моменти, когато не е необходимо да създаваме контролер, тъй като всичко, което искаме да направим, е решено в няколко реда код, които няма да използваме повторно, за това можем да поставим действието директно в маршрута.
ЗатварянеЗа това ще използваме така наречените затваряния или затваряния, което е начин за опаковане на повикване за кодиране на това Ларавел Той ще интерпретира и ще го стартира директно по пътя, за това, след очаквания параметър, ще поставим нова функция и в рамките на това можем да поставим всеки тип код или дори да донесем данни от нашия модел.
В тази част трябва да бъдем малко внимателни, тъй като можем по невнимание да забравим парадигмата MVC и в крайна сметка с приложение, което работи, но не следва необходимите конвенции и стандарти. Нека видим необходимия код:
Трябва да запишем това във файла routes.phpКакто можем да видим в този случай, сме поставили няколко променливи и след това сме върнали тяхната конкатенация, това е само извадка от това, което можем да постигнем. Отбелязваме също, че използваме методите HTTP за да имаме достъп до необходимото действие, например ако получихме достъп до този маршрут от метода POST на HTTP действието, което виждаме в кода, няма да бъде изпълнено.
С това завършихме този урок, вече научихме малко повече за контролерите и маршрутите в нашите приложения, направени с Ларавел.