1. Trang chủ
  2. » Công Nghệ Thông Tin

GIÁO TRÌNH LARAVEL PHẦN I

31 515 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 31
Dung lượng 150 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

class DemoController extends Controller{ public function demo{ return 'Vietpro Academy'; } } C2: Vào Command gõ php artisan make:controller controllerName 4.. Truyền tham số cho Controll

Trang 1

2 Laravel Framework

Laravel Framework chính là m t PHP Framework đi n hình, trong r t nhi u các PHP ộ ể ấ ềFramework ph bi n nh t hi n này nh Laravel, Phalcon, CodeIgniter, Zend, Symfony, CakePHP,… ổ ế ấ ệ ưthì Laravel là Framework ph bi n và đổ ế ược đánh giá là toàn di n nh t đ n th i đi m hi n t i.ệ ấ ế ờ ể ệ ạ

Trang 2

2 Cài đ t Laravel ặ

B1 T o th m c ch a th vi n c a Laravelạ ư ụ ứ ư ệ ủ

B2 M cmd lên, đi vào th m c đó và gõ theo cú pháp sau:ở ư ụ

composer create-project prefer-dist laravel/laravel blog

2 Các ph ươ ng th c c a Route ứ ủ

a Phương th c GETứ

Trang 3

Nh n các tham s đậ ố ược truy n trên thanh đ a ch c a trình duy t đ th c thi m t công vi cề ị ỉ ủ ệ ể ự ộ ệ

tương ngứ

Cú pháp:

Route::get(‘URI’, Action)

 URI: Uniform Resource Identifier là m t chu i ký t độ ỗ ự ượ ử ục s d ng đ xác đ nh, nh n d ng ể ị ậ ạ

m t tên ho c m t tài nguyên.ộ ặ ộ

 Action: Có th là m t hàm, m ng hay m t chu i, nó sẽ để ộ ả ộ ỗ ược Route th c hi n d a vào URIự ệ ự

echo '<form method="post">';

echo '<input type="text" name="txt" />';

echo '<input type="submit" name="submit" value="Test" />';

echo csrf_field();

echo '</form>';

});

Trang 4

c Các phương th c nghiên c u sauứ ứ

Controller chính là trái tim c a ng d ng, t t c m i d li u c n đủ ứ ụ ấ ả ọ ữ ệ ầ ượ ửc x lý sẽ được th ự

hi n trong Controller, ngoài ra các d li u c n đệ ữ ệ ầ ược đ y đi đâu, đi u hẩ ề ướng đ n n i nào cũng đ u ế ớ ề

do Controller quy t đ nh h tế ị ế

V y Controller có tác d ng nh n, x lý và đi u hậ ụ ậ ử ề ướng d li u trong m t h th ng.ữ ệ ộ ệ ố

2 T o m i m t Controller ạ ớ ộ

C1: Vào th m c Controllers theo đư ụ ường d n app/Http/Controllers đ t o m i m t file Controller ẫ ể ạ ớ ộ

v i yêu c u tên Class trùng tên File ớ ầ (S d ng autoload)ử ụ

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

Trang 5

class DemoController extends Controller

{

public function demo(){

return 'Vietpro Academy';

}

}

C2:

Vào Command gõ

php artisan make:controller controllerName

4 S d ng Controller trong Laravel 5 ử ụ

Route::get(‘param’, ‘ControllerClass@ControllerMethod’);

5 Truyền tham số cho Controller

Route::get('demo/{param1}/{param2}', 'DemoController@demo');

Trang 6

class DemoController extends Controller

{

public function demo($param1, $param2){

return 'Vietpro Academy: '.$param1.' - '.$param2;

View chính là các file giao di n, các file này ch t p trung các mã HTML, các k t qu tr vệ ở ỉ ậ ế ả ả ề

t Controller thu n túy, ch không co b t c m t thu t toán hay x lý nào đây cừ ầ ứ ấ ứ ộ ậ ử ở ả

M t View thông thộ ường có th s d ng các bi u th c đi u ki n, vòng l p đ đ xu t d ể ử ụ ể ứ ề ệ ặ ể ể ấ ữ

li u ph c v cho vi c hi n thệ ụ ụ ệ ể ị

View được sinh ra đ tách bi t t i đa mã giao di n v i code x lý PHP, thông thể ệ ố ệ ớ ử ường thì View ch tách đỉ ược 80-90% code php kh i giao di n, mu n tách 100% thì ph i k t h p v i m t ỏ ệ ố ả ế ợ ớ ộTemplate Enzine (Laravel s d ng Blade Template mà chúng ta sẽ h c nh ng bu i sau)ử ụ ọ ở ữ ổ

2 T o m i m t View ạ ớ ộ

Đ t o m i m t View các b n tìm t i th m c resources/views/ và t o m t file php b t kỳể ạ ớ ộ ạ ớ ư ụ ạ ộ ấ

Trang 7

3 G i View trong Controller ọ

class DemoController extends Controller

4 Truy n tham s cho View ề ố

Controller luôn truy n tham s sang View theo d ng m ng, và k t qu View nh n đề ố ạ ả ế ả ậ ược sẽ

là các giá tr đị ượ ưc l u tr trong các bi n đữ ế ượ ạc t o b i các KEY t t các ph n t m ng mà ở ừ ừ ầ ử ả

Controller truy n sangề

Trang 8

return view('admin.demoView', $arr);}

}

View

<?php

echo $khoahoc.'<br/>'.$trungtam;

Trang 10

3 Các cú pháp làm vi c trong Blade Template ệ

a Xu t ra giá tr c a bi n ho c th c thi các hàmấ ị ủ ế ặ ự

{{$bien}}

{{tinhTong($st1, $st2)}}

b In ra một chuỗi HTML

{{‘<h1 align="center">H c vi n Công Ngh Vietpro</h1>’}}ọ ệ ệ

c B qua cú pháp c a Blade Templateỏ ủ

Trang 11

@{{{<h1 align="center">H c vi n Công Ngh Vietpro</h1>}}}ọ ệ ệ

Trang 16

1 Error View là gì ?

Trong Laravel Error View đượ ử ục s d ng đ giúp l p trình viên t o ra các c nh báo ho c ể ậ ạ ả ặthông báo t h th ng cho View.ừ ệ ố

Error chính là m t BTPL (Blade Template) do chính l p trình viên t xây d ng theo ý mình, ộ ậ ự ự

và được Laravel quy đ nh đ t trong th m c ị ặ ư ụ errors n m trong th m c views.ằ ư ụ

public function demo1(){

return view('viewDemo', ['error'=>'Warning ']);

}

viewDemo

@include('errors.note')

III – VALIDATION

Trang 17

1 Validation là gì

Validation là quá trình ki m tra tính h p l c a các thông tin nh p vào Form Ch ng h n nh ể ợ ệ ủ ậ ẳ ạ ư

ki m tra email h p l , d li u nh p vào ph i là s , d li u nh p t i đa bao nhiêu ký t , t i thi u ể ợ ệ ữ ệ ậ ả ố ữ ệ ậ ố ự ố ể bao nhiêu ký t ,… ự

2 Rules trong Laravel 5

Rules là các quy t c b t bu c mà m t ph n t Form ph i tuân theo, theo đúng nguyên t c mà ắ ắ ộ ộ ầ ử ả ắ Laravel đã đ nh nghĩa s n ị ẵ

Laravel sử dụng cách thức sau để bắt lỗi và trả về kết quả

$Validator = Validator::make($request->all(), $rules, $message);

Trong đó:

Trang 18

 $request chính là thông tin Form và nhi u thông tin khác sẽ nh n đề ậ ược sau khi Submit

 Phương th c $request->all() l y ra m t m ng các ph n t c a Form v i name & valueứ ấ ộ ả ầ ử ủ ớ

 $rules là các quy n do chính chúng ta thi t l pề ế ậ

 $message là các c nh báo cũng do chính chúng ta thi t l pả ế ậ

c L y k t qu c a Validatorấ ế ả ủ

Sau khi đ i tố ượng $Validator được kh i t o t phở ạ ừ ương th c make thì nó có nh ng phứ ữ ương

th c r t quan tr ng sau đ cho phép chúng ta theo tác v i các k t qu nh n đứ ấ ọ ể ớ ế ả ậ ược

Trả về TRUE nếu có lỗi

Trang 19

$Validator->errors()->all()

B – BÀI T P Ậ

I – BÀI T P TH C HÀNHẬ Ự

1 Xây d ng ng d ng Login có các trự ứ ụ ường được Validate nh sau:ư

 Tài kho n & M t kh u không đả ậ ẩ ược đ tr ngể ố

 Tài kho ng ph i là Emailả ả

2 Xây d ng ng d ng đi u hự Ứ ụ ề ướng Layout c a Master Page v i các tiêu chí sauủ ớ

 Ch y Route admin thì hi n th danh sách thành viênạ ể ị

 Ch y Route add thì hi n th Form thêm m iạ ể ị ớ

 Ch y Route edit thì hi n th Form s a ạ ể ị ử

Chú ý: Có th áp d ng ph ể ụ ươ ng th c sau đ t o tham s cho Route ứ ể ạ ố

asset(‘/’): t ươ ng đ ươ ng http://localhost/vietpro

asset(‘/home’): t ươ ng đ ươ ng http://localhost/vietpro/home

Trang 20

 C1 C u hình trong file database.php n m trong th m c configấ ằ ư ụ

 C2 C u hình trong file envấ

3 Xây d ng b ng v i Schema builder ự ả ớ

Trang 21

b Phương th c đ i tên b ng d li u rename()ứ ổ ả ữ ệ

Trang 23

$table->dropColumn(columnName-1, columnName-2,… columnName-N);});

Trang 24

h Phương th c ki m tra s t n t i c a c t hasColumn()ứ ể ự ồ ạ ủ ộ

Migration trong Laravel đượ ử ục s d ng đ qu n lý các Schema m t cách d dàng và khoa ể ả ộ ễ

h c Các Schema sẽ đọ ược vi t trong các Migration và chúng sẽ đế ược th c thi công vi c c a mình ự ệ ủ

m t khi Migration độ ược ch y.ạ

Trang 26

class CreateTest2Table extends Migration

Trang 27

class CreateTest3Table extends Migration

b Xây d ng b ng v i Schema trong Migration fileự ả ớ

public function up()

Trang 29

B1 T o file Seeder trùng tên v i Migration đang qu n lý b ng d li uạ ớ ả ả ữ ệ

php artisan make:seeder UsersTableSeeder

B2 G i t i file Seeder trong class DatabaseSeederọ ớ

1 Xây d ng CSDL users_manager và khai báo các thông s đ k t n i Laravel đ n CSDL đó ự ố ể ế ố ế

2 Xây d ng b ng d li u users có các trự ả ữ ệ ường thông tin nh dư ưới đây:

 user_id: increments

 user_fullname: string

 user_name: string

 user_pass: string

Trang 31

 post_conten: text

 post_create: timestamp nullable

 post_update: timestamp nullable

Ngày đăng: 27/02/2018, 10:38

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w