2011-01-04 20 views
5

Tôi đã tạo một ứng dụng cho phép người dùng nhập sản phẩm và so sánh chúng. Tôi đang ở điểm mà tôi cần xem xét mở rộng quy mô và nhiều người dùng và tôi chỉ muốn hiển thị cho người dùng các mục mà họ đã tạo (thay vì toàn bộ db, có thể là một tùy chọn tại một số điểm, nhưng hiện tại, mỗi người dùng phải tạo danh sách riêng của họ).Có cách nào để đặt tất cả các truy vấn db chỉ truy xuất các mục nhập của người dùng nhất định hay mỗi truy vấn trong ứng dụng phải bao gồm "VÀ người dùng ..."?

Có cách nào/cách ưa thích để thực hiện tất cả các truy vấn trong suốt một ứng dụng chỉ trả lại các mục có trường "tác giả" được đặt cho một người dùng nhất định, người dùng đã đăng nhập? Hay mọi truy vấn phải được cập nhật với bộ lọc loại "AND author ..."? Đây có phải là không gian tên không?

Tôi đang sử dụng Python trên Google App Engine.

+0

Bạn có thể tạo một bảng khác nhau cho mỗi người dùng – Falmarri

+1

Kho dữ liệu của App Engine không có bảng, thay vào đó thuật ngữ 'loại' được sử dụng để tập hợp các bộ sưu tập đối tượng có cùng thuộc tính (hoặc tương tự). Thêm một loại cho mỗi người dùng là * có thể * là một ý tưởng tồi. Bạn sẽ tốt hơn bằng cách sử dụng namesapces. –

Trả lời

4

Tôi khuyên bạn nên xem xét namespaces, đây chính xác là loại trường hợp sử dụng mà chúng phù hợp.

Một lưu ý, nếu bạn muốn có thể truy vấn người dùng tất cả sản phẩm của người dùng, bạn có thể nên thêm thuộc tính của chủ sở hữu và sử dụng bộ lọc truy vấn. Bạn hiện không thể truy vấn qua các không gian tên - chỉ trong một không gian tên duy nhất cùng một lúc.

Các vấn đề liên quan