Basic Views Drupal 7
-
Upload
thanh-pham -
Category
Technology
-
view
2.043 -
download
1
description
Transcript of Basic Views Drupal 7
![Page 2: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/2.jpg)
Chuẩn bị
Cơ bản về dữ liệu
Views UI
Định dạng dữ liệu
Lọc dữ liệu
Sắp xếp dữ liệu
Bài tập cơ bản
Overview
![Page 3: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/3.jpg)
Cài đặt drupal 7 trên localhost và cài đặt module Views (cần cài them module Ctools)
Sử dụng module Devel để tự động tạo node và term
Chuẩn bị
![Page 4: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/4.jpg)
Tạo content type là tin tức (tin_tuc) gồm các trường như hình dưới
Chuẩn bị
![Page 5: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/5.jpg)
Cơ bản về dữ liệu
![Page 6: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/6.jpg)
Data primer
Chúng ta thường nhầm lẫn giữa hai thuật ngữ “dữ liệu” (data) và “thông tin” (information). Nhưng thực tế, chúng là hai khái niệm khác nhau.
“Dữ liệu” chỉ là một phần của thông tin.
Để biểu lưu trữ và sử dụng dữ liệu một cách hiệu quả, người ta sử dụng các cách thức lưu trữ gọi là Cơ Sở Dữ Liệu (database).
Mô hình được sử dụng nhiều nhất là mô hình CSDL quan hệ (relational database)
Phần mềm dùng để quản lý dữ liệu gọi là Hệ Quản Trị CSDL (database management system)
Các DMS thường gặp: Mysql, Oracle, PostgreSQL, SQL Server, DB2, Infomix
Drupal hỗ trợ nhiều DMS, thậm chí hỗ trợ cả NoSQL (MongoDB)
![Page 7: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/7.jpg)
Drupal data
Các thao tác trên dữ liệu
• Lọc – filtering (lấy trực tiếp và lọc theo điều kiện)
• Sắp xếp – sorting
..và cách mà dữ liệu hiển thị
• Dạng bảng – tables
• Dạng ô lưới – grids
• Dạng danh sách - lists
![Page 8: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/8.jpg)
Data views
Để thao tác với dữ liệu, người ta dùng ngôn ngữ SQL, tuy nhiên nó khó sử dụng và phức tạp.
Để giải quyết điều đó, module Views ra đời.
“view” chỉ là một khái niệm của Drupal, thực chất nó có nghĩa là “quản lý dữ liệu”
Module views cung cấp khả năng lọc, sắp xếp và trình bày dữ liệu sử dụng giao diện đồ họa mà không cần phải viết các câu lệnh SQL phức tạp.
![Page 9: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/9.jpg)
Data views
Module Views là một trong những module phổ biến nhất, được tích hợp chặt chẽ và có sự hỗ trợ tốt với Drupal
Views cung cấp một những truy vấn thông minh cho phép lọc nội dung từ content type, user, taxonomy và cả theo từng field.
Nhiều module con được tạo ra để mở rộng và cung cấp thêm nhiều tính năng mạnh mẽ cho Views như các module filed type (node reference…), module cung cấp kiểu format (views slideshow, jcarousel…)
![Page 10: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/10.jpg)
Views UI
![Page 11: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/11.jpg)
Views control panel
Đi tới Administration » Structure » Views
Trên tab list liệt kê tất cả các view
Các tùy chọn:
Add new view: them một view mới
Đối với một view đã lưu, có các tùy chọn:
• Edit: chỉnh sửa view• Disable: tắt, không sử dụng view• Delete: xóa view• Clone: tạo một bản sao của view• Export: xuất view
![Page 12: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/12.jpg)
Add new viewTạo một view mới
Machine-radable name: tên dùng trong code
Discription: mô tả chi tiết về view
Create a page & create a block: Một display view có thể xuất ra dạng page hoặc block. Đối với page cần thêm đường dẫn (path) cho nó.
Display format:: dạng hiển thị cho dữ liệu xuất ra, gồm:
• Grid• Unformatted list• jump menu• Table• html list
Ngoài ra có thể mở rộng bằng các module tích hợp khác.
Tùy thuộc vào loại dữ liệu ta chọn ở mục show là content hay filed… mà build mode sẽ có các tùy chọn là teaser, full posts.. Hoặc field. Về build mode sẽ nói kỹ trong phần sau.
Xong nhấp continue & edit
![Page 13: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/13.jpg)
View UI
1. Các display
2. Tên display
3. Các thao tác chọn lọc, sắp xếp và dạng hiển thị dữ liệu
4. Thiết lập cho display
5. Tùy chọn nâng cao
![Page 14: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/14.jpg)
View Displays
Một View có thể có nhiều Display
Mỗi display mặc định sẽ kế thừa thuộc tính của display Master
Mỗi view có tên riêng, tên này hiển thị trên thanh tab trên cùng.
Mỗi display có nhiều dạng kết xuât là
Page
Block
Feed
Attachment
Ngoài ra có thể có thêm các dạng khác do các module tích hợp với view cung cấp
![Page 15: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/15.jpg)
Định dạng dữ liệu
![Page 16: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/16.jpg)
FORMAT
Field là đơn vị dữ liệu nhỏ nhất mà view có thể “lấy” được.
Ngoài ra view có thể lấy được các thực thể phức hợp khác như content, taxonomy term, users, comments…hoặc các dữ liệu cho module khác cung cấp.
Tùy mục đích mà ta chọn dữ liệu phù hợp.
Để lấy ra từng field trong nhóm FORMAT chọn show fields sau đó add thêm từng field trong nhóm FIELDS.
Dữ liệu sau khi được lấy ra, có thể được hiển thị theo định dạng mong muốn. Để chọn định dang xuất ra, trong nhóm FORMAT chọn format nhấp vào liên kết đầu tiên (ở đây là HTML list)
![Page 17: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/17.jpg)
Format
Có các dạng hiển thị mặc định như sau
Grid: ô lưới
HTML list: danh sách
Jump menu: menu dạng select list
Table: dạng bảng
Unformatted list: không định dạng
Ngoài ra, có thể bổ sung thêm các kiểu định dạng khác bằng module tích hợp với view như views slide show, jcarousel…
![Page 18: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/18.jpg)
Lọc dữ liệu
![Page 19: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/19.jpg)
FILTER CRITERIA
Chúng ta thường yêu cầu lọc dữ liệu theo một yêu cầu nào đó. Ví dụ, chỉ lấy ra những bài viết đã được xuất bản và thuộc loại content type = news, lấy ra các bài viết thuộc chủ đề biển đảo, hay lấy ra một node có id cho trước.
Views cung cấp một bộ lọc (tương ứng với câu lệnh where trong bộ ba select from where trong SQL) để lấy ra dữ liệu theo điều kiện cho trước.
Trong nhóm FILTER CRITERIA chọn add để thêm điều kiện lọc mới.
Tương ứng với mỗi điều kiện lọc sẽ có các tùy chọn khác nhau, các toán tử thường gặp là:
Is one of: tồn tại Is all of: bằng Is none of: không tồn tại Is empty (NULL): rỗng Is not empty (NOT NULL): không rỗng
![Page 20: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/20.jpg)
Filter example
Ví dụ: lọc ra tất cả các bài viết có term là clo
1. Trong nhóm FILTER CRITERIA chọn add, sau đó chọn content: has taxonomy term
![Page 21: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/21.jpg)
Filter example
Ví dụ: lọc ra tất cả các bài viết có term là clo
2. chọn toán tử is one of
Chọn clo trong danh sách term bên phải
Tùy chọn: reduce duplicates dùng để loại bỏ những kết quả trùng nhau.
Xong nhấp Apply
Click Save và xem kết quả.
![Page 22: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/22.jpg)
Sắp xếp dữ liệu
![Page 23: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/23.jpg)
SORT CRITERIA
Thường gặp các yêu cầu lọc dữ liệu như: lấy ra 10 bài viết mới nhất. Lấy ra các bài viết mới được cập nhật…
Trong nhóm SORT CRITERIA chọn add sau đó chọn trường để sắp xếp.
Tương ứng với mỗi điều kiện lọc sẽ có các tùy chọn khác nhau, các tùy chọn thường gặp là:
Ascending: tăng dần
Descending: giảm dần
![Page 24: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/24.jpg)
Sorting example
Ví dụ: lọc ra 10 bài viết xem nhiều nhất
1. Trong nhóm SORT CRITERIA, add thêm trường content statistics: most recent view (cần bật module statistics)
![Page 25: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/25.jpg)
Example
Ví dụ: lọc ra 10 bài viết xem nhiều nhất
2. chọn Sort Descending
Administrative title là tiêu đề cho điều kiện hiện tại thay thế cho tiêu đề mặc định, sử dụng trong trường hợp bạn có nhiều mục trùng lặp hoặc muốn tiêu đề mang tính chất gợi ý hơn.
![Page 26: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/26.jpg)
Bài tập
![Page 27: Basic Views Drupal 7](https://reader036.fdocuments.net/reader036/viewer/2022062307/557e8b0fd8b42a8d518b457b/html5/thumbnails/27.jpg)
Exercises
1. Tạo view lọc ra 10 bài viết mới nhất
2. Tạo view lọc ra 10 tin tức mới nhất
3. Tạo view lọc ra tất cả bài viết thuộc chuyên mục kinh tế