Entity và Repository trong Lotus::Model
lotusrb
11
White

My Mai viết ngày 23/05/2015

Lotus

Trước khi đi vào phần giới thiệu bạn hãy trả lời câu hỏi nhỏ này của mình nha?
Ví dụ bạn muốn làm quen với mình, bạn cần biết gì về mình?
tên, điện thoại ... đúng không nào?

1) Vậy thì chúng ta xác định đối tượng Người này cần thông tin về : tên, điệnthoại

2) Bạn lưu số điện thoại của mình vào danh bạ của bạn chứ ? Cách làm sẽ thế nào đây?

Vào danh mục, tạo contact mới, lưu với tên là My

3) Àh, suy nghĩ lại mình muốn bạn lưu tên mình là My Mai, bạn update lại nha.

4) Chúng ta ghét nhau? Remove tên mình nhé

Okay rồi, chúng ta quay lại phần khái niệm nào

Chắc hẳn các bạn đã biết về Lotus đúng không nếu chưa biết thì ghé trang này http://lotusrb.org, hôm nay mình sẽ giới thiệu cho các bạn về Lotus::Model (là 1 component của Lotus Framework)

1) Entity là gì?

Entity là 1 object nó được định nghĩa dựa vào những gì nó có.
Liên hệ câu hỏi ở trên của mình thì Entity ở đây là: Người được định nghĩa dựa vào tên, điệnthoai

Cách định nghĩa 1 Entity:

require 'lotus/model'

class Nguoi
    include Lotus::Entity
    attributes :ten,  :dienthoai
end

2) Repository là gì?

Repository nó giống như là một trung gian giúp bạn giao tiếp với cơ sở dữ liệu một cách dễ dàng hơn.

Liên hệ ví dụ trên: Bạn lưu số điện thoại của mình vào danh bạ chứ. Có đúng không nào?
Mình sẽ hướng dẫn cách tạo new contact, cập nhật thông tin trong điện thoại dựa vào Repository nhé:

require 'lotus/model'

class NguoiRepository
    include Lotus::Repository
end

# Bạn có thông tin về tên của mình
nguoi = Nguoi.new(ten: 'My', dienthoai: '0123456789')

# Bạn tạo 1 new contact trong danh bạ
NguoiRepository.create(nguoi)

# Mình thích nên mình được lưu là 'My Mai'. Bạn update nó nhé.
nguoi.ten = 'My Mai'

nguoi = NguoiRepository.update(nguoi)

# Mình với bạn không chơi với nhau nữa. Bạn remove mình ra khỏi list contact của bạn đi.
NguoiRepository.delete(nguoi)

Đơn giản và dễ hiểu đúng không? Bài đến mình sẽ giới thiệu về các method có sẵn của Repository các bạn nhớ đón đọc nhé.
Nếu bạn muốn tìm hiểu kỹ hơn về Lotus::Model, Entity, Repository thì xem ở link này nhé https://github.com/lotus/model

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

My Mai

34 bài viết.
186 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
23 21
Bạn muốn load 3 image khác nhau (Ý mình ở đây là dùng tag không phải background nhé) cho 3 loại màn hình khác nhau (small, medium, large). Bạn sẽ l...
My Mai viết hơn 3 năm trước
23 21
White
21 8
Lotus là gì? (Link) là một Ruby Web Framework mới với chú trọng vào cấu trúc tách rời với thiết kế đơn giản và dễ hiểu. Hiện tại thì Lotus vừa re...
My Mai viết hơn 3 năm trước
21 8
White
19 9
Tham gia cộng đồng Thoáng đó cũng đã 2 năm từ lúc tớ tham gia cộng đồng Ruby Việt Nam. Giờ ngồi ngẫm lại được gì và mất gì :v Thật thì chẳng mất...
My Mai viết 2 năm trước
19 9
Bài viết liên quan
White
4 2
__Chú thích__: Đây là bản dịch tiếng Việt của bài viết gốc của tôi. Nếu bạn muốn xem bản tiếng Anh, xin hãy trỏ tới URL (Link) Lời mở (Link) là ...
Lơi Rệ viết hơn 3 năm trước
4 2
White
8 1
Tiếp tục bài viết lần trước về (Link) & (Link) bây giờ chúng ta sẽ tìm hiểu thêm cách tạo API từ Lotus Framework. Tại sao lại sử dụng Lotus để tạ...
My Mai viết hơn 3 năm trước
8 1
White
28 5
(Ảnh) Sau hơn 8 năm sử dụng Rails (và vẫn cho đến những ngày hôm nay), Rails làm một cuộc cách mạng lớn trong xây dựng phần mềm nền tảng Web với n...
Lơi Rệ viết hơn 3 năm trước
28 5
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
34 bài viết.
186 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!