2015-01-19 32 views
7

Tôi đã thêm một thuộc tính tùy chỉnh để mô hình của tôihùng hồn tìm kiếm/nơi trên thuộc tính tuỳ chỉnh

public function getTouchedAttribute() { ... 

Tôi muốn thêm video này vào truy vấn

hasMany()->where('touched', ...) 

nhưng rõ ràng đây không phải là một cột trong cai ban.

cách thanh lịch nhất để đạt được hành vi này là gì?

Trả lời

6

Một tùy chọn (và có thể là tùy chọn tốt hơn về hiệu suất) sẽ bắt chước thuộc tính với các hàm SQL thô. (Không thể giúp bạn với điều đó bởi vì tôi không biết những gì touched không)

Một cách khác là sử dụng filter về thu kết quả:

$collection = Model::all(); 
$filtered = $collection->filter(function($model){ 
    return $model->touched == true; 
}); 
+0

Tốt. Điều này là tốt. Nếu đó là một truy vấn sql đơn giản, thì tôi đã làm theo cách đó, nhưng nó là sự kết hợp của một số truy vấn và một số biến khác. – NiRR

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