Tải bản đầy đủ (.doc) (70 trang)

Tìm hiểu về framework laravel 4 x

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (656.54 KB, 70 trang )

TRƯỜNG ĐẠI HỌC TRÀ VINH
KHOA KỸ THUẬT VÀ CÔNG NGHỆ
BỘ MÔN CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN MÔN HỌC
HỌC KỲ I, NĂM HỌC 2014 – 2015

TÌM HIỂU VỀ FRAMEWORK LARAVEL 4.X

GIÁO VIÊN HƯỚNG DẪN
NGUYỄN NGỌC ĐAN THANH

SINH VIÊN THỰC HIỆN
BÙI VĂN TÍNH
MSSV: 110112002
LỚP: DA12TT


Trà Vinh, ngày 10 tháng 1 năm 2015


TRƯỜNG ĐẠI HỌC TRÀ VINH
KHOA KỸ THUẬT VÀ CÔNG NGHỆ
BỘ MÔN CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN MÔN HỌC
HỌC KỲ I, NĂM HỌC 2014 – 2015

TÌM HIỂU VỀ FRAMEWORK LARAVEL 4.X

GIÁO VIÊN HƯỚNG DẪN


NGUYỄN NGỌC ĐAN THANH

SINH VIÊN THỰC HIỆN
BÙI VĂN TÍNH
MSSV: 110112002
LỚP: DA12TT

Trà Vinh, ngày 10 tháng 1 năm 2015


LỜI MỞ ĐẦU
Laravel Framework 4, vừa chỉ ra mắt vào cuối tháng 5 - 2013. Tuy vậy, PHP
Framework này đã nhanh chóng có được một cộng đồng rất lớn trong thế giới các
Framework của ngơn ngữ lập trình PHP. Vậy tại sao, Framework này lại được đơng
đảo các lập trình viên đón nhận ?.
Trước hết, sự tinh tế của Laravel nằm ở chỗ bắt kịp được xu hướng công nghệ
mà điểm nhấn ở đây là các tính năng mới trong các phiên bản PHP 5.3 trở lên. Điều
đó được thể hiện qua khái niệm namespace, composer, closure và rất nhiều những
tiêu chuẩn trong design pattern được áp dụng trên nền tảng Framework này. Đồng
thời, với cách hướng dẫn đơn giản và dễ tiếp cận giống với Codeigniter Framework
đã khiến người dùng thích ngay từ lần đầu "tiếp cận" với Framework này.
Laravel 4 cũng có sự tích hợp của một phần trong thư viện symfony và áp dụng
triệt để mơ hình ORM (một phương pháp lập trình để chuyển đổi từ mơ hình
database sang mơ hình đối tượng) với khái niệm liên quan đến Eloquent class. Đồng
thời, nó cũng giải quyết được những vấn đề mà các Framework khác đang mắc
phải. Chẳng hạn như master layout, mơ hình xử lý với ORM dễ dàng hơn và dễ mở
rộng hơn.
Bạn sẽ không cảm thấy thất vọng khi đến với Laravel. Vì những điều mới lạ
trong các Framework mạnh bậc nhất hiện nay sẽ tái hiện lại trên Laravel. Thông qua
điều này, bạn sẽ tiếp cận các PHP Framework khác cực nhanh. Do nền tảng và

những chuẩn mực của Laravel đều theo xu thế chung của sự phát triển mà các PHP
Framework hiện nay đang theo đuổi.
Đồ án tìm hiểu về Laravel Framework giúp các bạn có một cái nhìn mới cũng
như cách sử dụng hiệu quả về Framework này.


LỜI CẢM ƠN
Laravel Framework là một trong những giải pháp tốt nhất cho những ai đang cần
phát triển web bằng ngơn ngữ PHP. Ngồi tính năng bảo mật, khả năng mở rộng
cao, dễ dàng làm việc giữa các team, giảm thiểu thời gian viết code. Thì Laravel
Framework cịn có một cộng đồng phát triển rộng lớn , nơi mà bạn dễ dàng trao đổi
những kinh nghiệm cũng như những đoạn code bảo mật mới nhất cho website của
mình. Vì vậy, em đã chọn đề tài “Tìm hiểu về Framework Laravel 4.x ”. Đề tài này
là một đề tài hay, không những vậy nó cịn rất thiết thực trong thời buổi hiện nay
nên em đã rất thích thú và quyết định chọn đề tài này.
Trước khi chọn đề tài này, em đã có rất nhiều băn khoăn chẳng hạn như: nó có
khó khơng, với kiến thức hiện tại (chưa tiếp cận với Framework nào) thì em có làm
được đề tài này hay khơng,… vì thế em đã gặp cơ, người hướng dẫn trực tiếp (Cô
Nguyễn Ngọc Đan Thanh) để xin cô ý kiến. Cơ ln động viên và khuyến khích em
làm cho em có thêm động lực và sự tự tin để chọn đề tài này.
Trong quá trình làm đề tài thì cơ đã tận tình chỉ dẫn khi mà em gặp khó khăn hay
mắc phải những vướng mắc phức tạp. Cuối cùng thì đề tài em chọn đã được hồn
thành.
Qua đây, cho em xin gửi lời cảm ơn chân thành đến cô. Nhờ cô mà em học được
rất nhiều điều mới và bổ ích. Kiến thức của em được nâng cao hơn, nó rất cần thiết
cho em cũng như cơng việc của em sau này. Một lần nữa cho em nói lời “ Cảm ơn”
đến cơ.


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

………………………………………………………………………………..
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
…………………………………………………………………………………......
Trà Vinh, ngày ….. tháng ….. năm …..
Giáo viên hướng dẫn
(Ký tên và ghi rõ họ tên)


MỤC LỤC
MỤC LỤC................................................................................................................. 6

MỤC LỤC HÌNH......................................................................................................9
MỤC LỤC BẢNG...................................................................................................10
ĐỀ CƯƠNG CHI TIẾT...........................................................................................11
CHƯƠNG 1: ĐẶT VẤN ĐỀ...................................................................................13
1.1 PHP Framework là gì?...................................................................................13
1.2 Tại sao chúng ta nên sử dụng PHP Framework?............................................14
1.3 Tại sao chúng ta nên sử dụng Laravel Framework?.......................................14
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT........................................................................15
2.1 Cấu trúc thư mục của Laravel........................................................................15
2.2 Cài đặt Laravel...............................................................................................17
2.2.1 Cài Composer..........................................................................................17
2.2.2 Cài Laravel...............................................................................................17
2.3 Cấu hình cơ bản cho ứng dụng.......................................................................18
2.4 Chạy ứng dụng đầu tiên với Laravel..............................................................18
2.5 Route trong Laravel Framework....................................................................18
2.5.1 Basic Routing...........................................................................................18
2.5.2 Route Parameters.....................................................................................20
2.5.3 Route Filters.............................................................................................20
2.5.4 Name Route.............................................................................................22
2.5.5 Route Groups...........................................................................................24
2.5.6 Route Prefixing........................................................................................24
2.6 View trong Laravel Framework.....................................................................25
2.7 Controller trong Laravel Framework..............................................................27
2.7.1 Khai báo Controller trong Laravel Framework:.......................................27
2.7.2 Chạy Controller theo phương thức Route::get.........................................27
2.7.3 Implicit Controllers – Sử dụng phương thức Route::controller................28
2.7.4 RESTful Resource Controllers – Sử dụng phương thức Route::resource.29
7



2.7.5 Controller với Filter.................................................................................32
2.8 Kết nối cơ sở dữ liệu......................................................................................34
2.8.1 Cấu hình kết nối cơ sở dữ liệu trong Laravel Framework........................34
2.8.2 Database Transactions.............................................................................35
2.9 Sử dụng Query Builder...................................................................................37
2.9.1 Truy vấn dữ liệu.......................................................................................37
2.9.2 Join bảng dữ liệu......................................................................................41
2.9.3 Hàm trong Laravel Framework................................................................41
2.9.4 Raw Expressions......................................................................................42
2.9.5 Câu lệnh Inserts dữ liệu...........................................................................42
2.9.6 Câu lệnh Updates dữ liệu.........................................................................43
2.9.7 Câu lệnh Deletes dữ liệu..........................................................................43
2.9.8 Câu lệnh Union........................................................................................43
2.10 Eloquent ORM.............................................................................................43
2.10.1 Lấy dữ liệu.............................................................................................44
2.10.2 Thêm dữ liệu (Insert).............................................................................45
2.10.3 Cập nhật dữ liệu (Update)......................................................................45
2.10.4 Xóa dữ liệu (Delete)...............................................................................46
2.11 Sử dụng Migrations và Schema Builder.......................................................46
2.11.1 Lớp Schema Builder – thao tác với bảng CSDL....................................47
2.11.2 Migrations – Quản lý CSDL..................................................................50
CHƯƠNG 3: PHÂN TÍCH - THIẾT KẾ HỆ THỐNG............................................54
3.1 Yêu cầu chức năng:........................................................................................54
3.1.1 Yêu cầu lưu trữ........................................................................................54
3.1.2 Yêu cầu tra cứu........................................................................................54
3.1.3 Yêu cầu tính toán.....................................................................................54
3.1.4 Yêu cầu kết xuất......................................................................................54
3.2 Yêu cầu phi chức năng...................................................................................54
3.3 Thiết kế dữ liệu..............................................................................................55
3.3.1. Mơ hình thực thể kết hợp (ERD).............................................................55

3.3.1.1 Mơ hình ERD:...................................................................................55
8


3.3.1.2 Danh sách các thực thể......................................................................55
3.3.1.3 Bảng mô tả các thực thể.....................................................................55
3.3.1.3.1 Thực thể posts.............................................................................55
3.3.1.3.2 Thực thể comments.....................................................................56
3.3.1.3.3 Thực thể users.............................................................................56
3.3.2 Mơ hình vật lý..........................................................................................57
3.3.2.1 Mơ hình vật lý...................................................................................57
3.3.2.2 Danh sách các bảng...........................................................................57
3.3.2.3 Mô tả chi tiết các bảng.......................................................................57
3.3.3 Ràng buộc tồn vẹn..................................................................................59
3.3.3.1 Ràng buộc tồn vẹn có bối cảnh là 1 quan hệ....................................59
3.3.3.2 Ràng buộc tồn vẹn có bối cảnh là nhiều quan hệ.............................60
3.4 Thiết kế xử lý.................................................................................................61
3.4.1 Phần Public..............................................................................................61
3.4.2 Phần Admin.............................................................................................61
3.5 Thiết kế giao diện...........................................................................................61
3.5.1 Thiết kế hệ thống thực đơn......................................................................61
3.5.2 Thiết kế màn hình....................................................................................63
CHƯƠNG 4: CÀI ĐẶT – THỬ NGHIỆM..............................................................66
4.1 Các bước chuẩn bị..........................................................................................66
4.2 Dữ liệu thử nghiệm........................................................................................66
4.3 Một số kết quả thử nghiệm:............................................................................68
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.........................................69
5.1 Kết luận:.........................................................................................................69
5.1.1 Kết quả đạt được......................................................................................69
5.1.2 Hạn chế....................................................................................................69

5.1 Hướng phát triển............................................................................................69
DANH MỤC TÀI LIỆU THAM KHẢO.................................................................70

9


MỤC LỤC HÌNH
Hình 2.1: Thư mục Laravel Framework..................................................................15
Hình 2.2: Chức năng của các thư mục chính...........................................................15
Hình 2.3: Chức năng cụ thể của các thư mục con trong app....................................16
Hình 2.4: Cài đặt Laravel thành cơng......................................................................17
Hình 2.5: Ánh xạ giữa route và action.....................................................................30
Hình 2.6: Thực hiện migrate bằng command line....................................................52
Hình 2.7: Bảng dữ liệu được tạo bằng lệnh migrate................................................52
Hình 3.1: Mơ hình ERD..........................................................................................55
Hình 3.2: Mơ hình vật lý.........................................................................................57
Hình 3.3: Mơ hình xử lý phần Public......................................................................61
Hình 3.4: Mơ hình xử lý phần Admin......................................................................61
Hình 3.5: Mơ hình trang chủ của Website...............................................................62
Hình 3.6: Thực đơn ngang.......................................................................................62
Hình 3.7: Thực đơn đăng nhập................................................................................62
Hình 3.8: Thực đơn đăng ký....................................................................................63
Hình 3.9: Giao diện trang chủ..................................................................................63
Hình 3.10: Giao diện đăng nhập khơng thành cơng.................................................64
Hình 3.11: Giao diện đăng ký khơng thành cơng.....................................................64
Hình 3.12: Giao diện đăng nhập thành cơng............................................................65
Hình 3.13: Giao diện đăng ký thành công...............................................................65
Bảng 4.1: Thông tin posts........................................................................................66
Bảng 4.2: Thơng tin users........................................................................................67
Hình 4.3: Màn hình kết quả khi search....................................................................68


10


MỤC LỤC BẢNG
Bảng 3.1: Mô tả thực thể posts................................................................................56
Bảng 3.2: Mô tả thực thể comments........................................................................56
Bảng 3.3: Mô tả thực thể user..................................................................................57
Bảng 3.4: Bảng posts...............................................................................................57
Bảng 3.5: Bảng comments.......................................................................................58
Bảng 3.6: Bảng users...............................................................................................58
Bảng 3.7: Tầm ảnh hưởng bối cảnh posts................................................................59
Bảng 3.8: Tầm ảnh hưởng bối cảnh users................................................................59
Bảng 3.9: Tầm ảnh hưởng bối cảnh comments........................................................60
Bảng 3.10: Tầm ảnh hưởng bối cảnh posts và comments........................................60
Bảng 3.11: Tầm ảnh hưởng bối cảnh users và comments........................................60

11


ĐỀ CƯƠNG CHI TIẾT
Tên Đề Tài: Tìm hiểu về Framework Laravel 4.x
Giáo viên hướng dẫn: Nguyễn Ngọc Đan Thanh
Thời gian thực hiện: 8/12/2014 – 10/01/2015
Sinh viên thực hiện:
- Họ tên: Bùi Văn Tính
- MSSV: 110112002

Nội Dung Đề Tài: Tập trung nghiên cứu lý thuyết và hướng dẫn cách thức sử dụng cơng
cụ lập trình Laravel Framework để phục vụ cho việc học cũng như lập trình web.

Kế Hoạch Thực Hiện:
Tuần

Thời gian

Nội dung cơng việc

Người thực hiện

- Tìm hiểu sơ lược về cơng
cụ
1

lập

trình

Laravel

Từ ngày 08/12/2014 Framework 4.2 trên trang
đến 21/12/2014

Web:

Bùi Văn Tính

/>2.
- Tìm hiểu về cách sử dụng
2


Từ ngày 22/12/2014 các câu lệnh (cú pháp) trong
đến 28/12/2014

Laravel để lập trình web.

Bùi Văn Tính

- Tiến hành lập trình web.
3

4

Từ ngày 29/12/2014 - Hồn thành quyển đồ án
đến 04/01/2015

mơn học.

Từ ngày 05/01/2015 - Hồn thành sản phẩm.
đến 10/01/2015

Bùi Văn Tính

Bùi Văn Tính
12


Xác nhận của GVHD

Ngày 10 tháng 01 năm 2015
Ký và ghi rõ họ tên


13


CHƯƠNG 1:
ĐẶT VẤN ĐỀ

1.1 PHP Framework là gì?
Như các bạn đã biết, PHP là 1 ngôn ngữ script rất phổ biến hiện nay bởi những
lý do: linh hoạt, dễ sử dụng, dễ học, ..v…v. nhưng đôi khi việc viết mã PHP, hay
bất cứ ngơn ngữ (lập trình) nào khác, có thể trở nên đơn điệu và lủng củng. Đó là
lúc PHP Framework có thể giúp bạn.
PHP Frameworks làm cho sự phát triển của những ứng dụng web viết bằng ngôn
ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp 1 cấu trúc cơ bản để xây dựng
những ứng dụng đó. Hay nói cách khác, PHP Framework giúp đỡ các bạn thúc đẩy
nhanh chóng q trình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian, tăng
sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại mã cho lập trình viên.
Ngồi ra Framework cịn giúp những người mới bắt đầu có thể xây dựng các ứng
dụng ổn định hơn nhờ việc tương tác chính xác giữa các Database, mã (PHP) và
giao diện (HTML) 1 cách riêng biệt. Điều này cho phép bạn dành nhiều thời gian để
tạo ra các ứng dụng web, hơn là phí thời gian để viết các đoạn mã lặp lại trong 1
project.
Ý tưởng chung đằng sau cách thức làm việc của 1 PHP Framework được kể đến
là Model View Controller (MVC). MVC là 1 mơ hình (kiến trúc) trong lập trình,
cho phép tách biệt các mã nghiệp vụ và giao diện thành các phần riêng biệt, điều
này đồng nghĩa với việc ta có thể chỉnh sửa chúng 1 cách riêng lẻ. Trong cụm từ
MVC thì: Model (M) có thể hiểu là phần xử lý các thao tác về nghiệp vụ (business
logic), View được hiểu là phần xử lý lớp giao diện (presentation layer), và
Controller làm nhiệm vụ lọc các request đc gọi từ user, có chức năng như 1 route:
điều chỉnh, phân luồng các yêu cầu để gọi đúng Model & View thích hợp. Về cơ

bản, MVC chia nhỏ q trình xử lý của 1 ứng dụng, vì thế nên bạn có thể làm việc
trên từng thành phần riêng lẻ, trong khi những thành phần khác sẽ không bị ảnh
hưởng tới. Thực chất, điều này giúp đỡ bạn lập trình PHP nhanh hơn và ít phức tạp
hơn.
14


1.2 Tại sao chúng ta nên sử dụng PHP Framework?
Có rất nhiều lý do khác nhau để các lập trình viên sử dụng PHP Framework,
nhưng 1 trong những lý do chính vẫn là khả năng giúp các lập trình viền tăng tốc
quá trình phát triển ứng dụng. Việc sử dụng lại các mã lệnh giống nhau trong nhiều
project sẽ giúp các bạn tiết kiệm được thời gian và công sức 1 cách đáng kể. Một
Framework sẽ cung cấp sẵn các module nền tảng cần thiết để xây dựng 1 project, vì
thế, các lập trình viên có thể tận dụng được thời gian để phát triển các ứng dụng
thực tế, hơn là mất thời gian để xây dựng lại nền tảng trên mỗi project.

1.3 Tại sao chúng ta nên sử dụng Laravel Framework?
Có hơn 20 Framework mã nguồn mở PHP khác nhau, nhưng trong số đó thì
Laravel Framework là phổ biến nhất, xếp sau là: PhaIcon, Symfony2, CodeIgniter,
Yii,… .
Nó là 1 Framework khá mới mẻ nhưng bù lại nó có "hướng dẫn sử dụng" khá
đầy đủ, rõ ràng và dễ hiểu và cùng với cộng đồng phát triển rộng lớn trên toàn thế
giới. Nếu bạn đã từng làm việc với các Framework khác hoặc chỉ là người mới bắt
đầu "chập chửng" tìm hiểu PHP Framework thì việc tiếp cận Laravel Framework
khơng phải là vấn đề khó khăn gì. Ưu điểm của nó là: Autoload theo namespace,
Các lệnh tương tác với cơ sở dữ liệu cực kỳ ngắn gọn và thân thiện, phân trang
trong laravel cực kỳ đơn giản, việc quản lý layout giờ đây thật sự giản đơn với
Laravel, dễ dàng tích hợp các thư viện của Zend và các gói bundle (giống như
moduel) vào project, có rất nhiều gói bundle đc các đồng đạo trên thế giới build sẵn
và share trên github và còn rất nhiều ưu điểm khác đang đợi các bạn khám phá… .


15


CHƯƠNG 2:
CƠ SỞ LÝ THUYẾT

2.1 Cấu trúc thư mục của Laravel
Một dự án web viết bằng Laravel có cấu trúc thư mục như sau:

Hình 2.1: Thư mục Laravel Framework

Hình 2.2: Chức năng của các thư mục chính
Như đã đề cập ở trên, thư mục /app là nguồn chính của ứng dụng, vì vậy chúng
ta cần tìm hiểu sâu về chúng:
16


Hình 2.3: Chức năng cụ thể của các thư mục con trong app
17


2.2 Cài đặt Laravel
2.2.1 Cài Composer
Chúng ta sẽ cài đặt Laravel bằng composer nên các bạn cần cài đặt composer
trước, tôi dùng window nên tôi download bản cài đặt composer của window. Bạn có
thể tải composer tại địa chỉ: />Các bạn download về và cài đặt bình thường, lưu ý ở chỗ chọn php thôi, các
bạn chỉ đường dẫn đến file php.exe trong thư mục php của XAMPP
(xampp/php/php.exe).


2.2.2 Cài Laravel
Bản Laravel mới nhất hiện tại là 4.2 (Tại thời điểm bài viết này), bản này yêu
cầu chạy trên PHP>=5.4, hiện tại tôi đang dùng XAMPP 5.6.3 nên cài được bản
mới nhất của Laravel. Nếu các bạn muốn cài đặt bản mới nhất thì chỉ cần dùng lệnh
sau:
composer create-project laravel/laravel tên-thư-mục-laravel-của-bạn
Cịn muốn nếu install các bản thấp hơn thì dùng:
composer create-project laravel/laravel tên-thư-mục-laravel-của-bạn 4.0.*
Sau khi cài đặt xong, chúng ta có cấu trúc thư mục Laravel như hình 2.1 phía
trên. Để biết được có cài Laravel thành cơng hay khơng thì chúng ta thử chạy
Laravel

bằng

cách

mở

trình

duyệt

lên

rồi



địa


chỉ

như

sau:

http://localhost/laravel_demo/public/ . Nếu thành cơng thì sẽ hiển thị hình dưới đây:

Hình 2.4: Cài đặt Laravel thành công
18


2.3 Cấu hình cơ bản cho ứng dụng
Các bạn truy cập vào app/config/app.php và chỉnh sửa lại những thông tin cơ
bản sau:
+ Chỉnh lại URL,các bạn tìm tới key url và chỉnh lại cho phù hợp với dự án của
mình nhé:
'url' => 'http://localhost/kienthuc24h/'
+ Cấu hình key,các bạn tìm tới dịng có cấu hình key mục đích của lệnh này là
tăng tính bảo mật của những cookie và session cho website. Hoặc các bạn có thể sử
dụng lệnh CMD bằng cách chỉ đường dẫn đến thư mục làm việc của bạn ở đây mình
sử dụng thư mục kienthuc24h và chạy dịng lệnh sau:
php artisan key:generate

2.4 Chạy ứng dụng đầu tiên với Laravel
- Các bạn truy cập vào file app/route.php và thêm nội dung sao vào cuối file:
Route::get(‘/dang-nhap’,function(){
echo ‘Đây là trang đăng nhập’;
});


các
bạn
thử

lên
trình
duyệt
đường
link:
http://localhost/kienthuc24h/public/dang-nhap các bạn sẽ thấy được kết quả với nội
dung sau:
Đây là trang đăng nhập

2.5 Route trong Laravel Framework
Mục đích của router là định tuyến đến những controller cụ thể nào từ phía
request của người sử dụng. Đối với những Framework khác thì khi các bạn muốn
thực hiện 1 cơng việc nào đó thường chúng ta cần xây dựng 1 controller để xử lý
phải khơng nào, nhưng trong Laravel thì các bạn hồn tồn có thể xử lý dữ liệu
ngay trong phần Router. Đây chính là điểm mạnh cũng như điểm khác biệt lớn của
Laravel Framework đối với các Framework khác.

2.5.1 Basic Routing
- Các định tuyến trong Laravel đều được viết trong app/route.php. Cú pháp
đơn giản nhất của 1 định tuyến đó là:
19


Route::method(‘URI’,’Function call back’)
Trong đó thì:
+ URI là dạng link trên url.

+ Function callback: Hàm sẽ gọi tới link URI phía trên được chạy, đây chính
là nơi các bạn có thể xử lý dữ liệu.
+ Method chính là các dạng phương thức cơ bản: post, get, put, delete, any.
- POST Route: Các thao tác lấy từ form như thêm dữ liệu.
- GET Route: Dành cho các thao tác truy cập thông thường tương đương với
request cơ bản trong PHP. Ví dụ chạy 1 link trên url.
- PUT Route: Dành cho thao tác lấy từ form nhưng là cập nhật dữ liệu.
- DELETE Route: Dành cho thao tác hành động xóa dữ liệu.
- ANY Route: là sự tổng hợp các thao tác ở trên.
Trong đó thì 2 dạng POST và GET sẽ được sử dụng nhiều nhất.
Ví dụ:
Các bạn mở file app/route.php và viết dòng code sau:
Route::get(‘/san-pham’, function(){
echo ‘Trang sản phẩm’;
});
Tiếp theo truy cập vào đường link url với đường dẫn localhost/kienthuc24h/s
an-pham (Trong đó thì kienthuc24h chính là thư mục dự án). Khi các bạn chạy link
này lập tức trong Route sẽ kiểm tra và gọi đúng tới hàm callback. Sau khi chạy
trang này các bạn sẽ nhận được thông báo như ý muốn.
- Ngồi ra các bạn cịn có thể tùy chỉnh rất nhiều trong phần Route này theo
cú pháp:
Route::method(‘Tên định danh’,’Tham số’);
Ví dụ:
Route::get(“san-pham”,”ProductController@list”);
Với ví dụ trên có nghĩa là khi chúng ta chạy link san-pham lúc này bộ điều
hướng sẽ gọi tới controller là ProducController và phương thức (action) là list.
20




×