Professional Documents
Culture Documents
MVC và You
Sau khi đã tạo xong hàm index chúng ta sẽ qua file app/views/articles/index.html.erb.
Bằng cách sử dụng lệnh ruby kết hợp với html để tạo ra một danh sách hiển thị từng article
Resourceful Routing
Rails có hỗ trợ một phương thức ánh xạ tài nguyên bằng cách sử dụng root đặt vào
index và resources cho articles thì có thể truy cập đến từng article
root "articles#index"
resources :articles
Ở đây để tạo một article mới, chúng ta sẽ sử dụng một phương thức được gọi là form
builder. Sử dụng form builder chúng ta có thể viết ra một biểu mẫu có đầy đủ cấu hình và tuân
theo quy chuẩn của Rails
+ Đầu tiên cần tạo một view gọi là new.html.erb dùng để tạo một form theo mẫu
+ Tạo một phương thức gọi là form_with dùng để chứa các biểu mẫu trong form_with
chứa các phương thức label và text_field để xuất ra các phần tử biểu mẫu thichs hợp
+ Kết quả của biểu mẫu được tạo ra , biểu mẫu này sẽ được chứa trong phương
thức được gọi là param để phục vụ cho việc gọi lại trong controller
Sử dụng các strong parameters
Validate đầu tiên yêu cầu presence là true nghĩa là không được bỏ trống , validate thứ hai cũng
vậy nhưng có thêm yêu cầu là độ dài tối thiểu là 10
Sau đó để lỗi này có thể áp dụng vào cho title và body thì cần chỉnh sửa lại khi nhập vào
ở file new.hrml.erb và trình điều khiển ở article_controller
Kêt thúc
Tạo một liên kết đến trang khởi tạo article bằng cách thêm đường dẫn ở trang index
Và khi đó ở hai file new.html.erb và edit.html.erb sẽ sử dụng lệnh render của ruby để sử dụng
được phần code ở _form.html.erb
Bổ sung thêm
+ CHúng ta có thể xem chi tiết các article mà không cần phải sử dụng đường link bằng cách +
+ Chúng ta gắn link trực tiếp vào trong các title hoặc id ở file index
<a href="<%= article_path(article) %>"><%= article.title %></a>
+ Trong cùng một thư mục Rails sử dụng để chứa các project không thể sử dụng lệnh rails
generate với cùng một tên
CHúng ta có thể xem port của rails bằng cách vào file puma.rb
Cũng như cách khởi tạo như trên chúng ta cũng sẽ khởi tạo một model gọi là Comment bao
gồm hai thành phần là commenter và body
Ở file comment.rb có một sự khác biệt đó là belongs_to:article bằng cách sử dụng từ khoá
reference, nó tạo một cột mới trên bảng dữ liệu của bạn với tên mô hình đã cung cấp là article
với một id mà có thể chứa các giá trị số nguyên. Nói một cách khác là mỗi Article được xem
như là một nơi chứa là thao tác với những comment chứa trong nó và có thể được truy xuất
bằng cách @aritcle.comments
Từ đây chúng ta sẽ bắt đầu khởi tạo những comment trong article
Việc làm như thế này tạo ra những comment nằm trong từng article thể hiện mối quan hệ thứ
bậc giữa các article và comment
Bắt đầu cấu hình từ file comment_controller.rb. Vì trong phần trên chúng ta đã khởi tạo hàm
create từ trong Rails nên chúng ta cũng sẽ làm tương tự nhưng ở đây để Rails có thể hiểu
được rằng chúng ta đang tạo Comment cho Article nào thì chúng ta phải sử dụng lệnh find cho
Article và gọi lệnh create cho Article đó
Và cuối cùng thì chúng ta có thể tạo ra một Comment mới và hiển thị nó phía dưới Article
Ở phần Article trước chúng ta đã tạo ra một file form riêng biệt cho phần tạo mới và update có
thể dùng chung với nhau Vì vậy ở đây chúng ta cũng sẽ tách phần create ra riêng và phần
show ra riêng
Bằng hai cách render khác nhau này Rails sẽ tìm đến thư mục comments và làm việc ở file
_form.html.erb và file _comment.html.erb
Bảo mật