ở đây tức là bạn gán cái $this->room chính là một "tham chiếu" của cái model Room kia. Bạn có thể tìm đọc về Dependency Injection để hiểu về cái chỗ binding này:
(Room$room)
Vì vậy khi bạn gọi $this->room = $room tức là ở đây $this->room chính là cái model Room kìa. và bạn có thể sử dụng các methods của Room.
số query sẽ không tăng theo số record mà sẽ tăng theo deep của tree, thử check xem kết quả DaiLy::where('affID',2)->with('childrenCategories')->get() có là 1 collection không ? ok rồi thì làm bước tiếp theo
bạn muốn paginate list bao gồm con nó, con của con nó .... đúng không ?
vậy thì phải map lại kết quả, ở đây bạn xử lý ở server, nên bạn có thể viết 1 hàm để map lại nó, trong model hay helper hay gì tùy bạn
pseudocode
function mapDailyChildrenRecursiveToFlatList(Collection $collection, Array $arr = []): Collection {
if (!empty($collection->categories)) {
foreach($collection->categories as $cate) {
// u can exclude some keys u dont want
$arr[] = $cate;
$this->mapDailyChildrenRecursiveToFlatList($cate, $arr);
}
} else {
return collect($arr);
}
}
// in controller
$daily = DaiLy::where('affID',2)->with('childrenCategories')->paginate(2);
$childrenFlatList = mapDailyChildrenRecursiveToFlatList($daily);
return view('view.daily', ['daily' => $childrenFlatList ]);
Cho mình hỏi thêm chút mình muốn phân trang theo kiểu Scroll ở bản Mobile, nhưng trên bản Desktop thì vẫn giữ kiểu phân trang 1,2,3,4,5. Mình thấy dữ liệu có trả về totalCount(tổng số bản ghi), số bản ghi trên 1 trang --> vậy mình đã tính ra được số trang sẽ có.
Nhưng giờ áp dụng kiểu phân trang truyền thống thì mình lấy Scroll Id kiểu gì bạn nhỉ ?
Cảm ơn bạn, có vẻ bạn chưa hiểu ý của mình lắm. Cái mình cần là phân trang mà chưa phân trang được. Nó có 1 điểm khù khoằm ở đây là khi dùng paginate(10) thì nó lấy đủ 10 cái và phân trang nhưng ở đây lại sử dụng đệ quy gọi ngược trở lại và như thế thì những thằng gọi đến child đó nó lại không nằm trong truy vấn nên paginate not work.
THẢO LUẬN
ở đây tức là bạn gán cái $this->room chính là một "tham chiếu" của cái model Room kia. Bạn có thể tìm đọc về Dependency Injection để hiểu về cái chỗ binding này:
Vì vậy khi bạn gọi $this->room = $room tức là ở đây $this->room chính là cái model Room kìa. và bạn có thể sử dụng các methods của Room.
Dạo này đang sấp =.="
e đang cần ins sll, a liên hệ e 0934370678
Bao giờ ra phần mới thế Bạn? Hóng quá.
Cảm ơn bạn, để mình thử.
Vâng ạ, e cảm ơn anh.
Hay thực sự (bravo)
@quyen56920 với PHP thuaant thì bạn có thể sử dụng thư viện này nhé https://github.com/mpdf/mpdf
Mình đang viết PHP thuần vì mình làm tool nhỏ thôi, nếu bạn có câu trả lời cho Laravel ,Yii2 or bất kì framework cho kết quả như trên là đc
@quyen56920 bạn có đang dùng framework như Laravel không hay chỉ dùng PHP thuần thế
Mình đang dùng php
anh có nguồn tài liệu về nhận diện giọng không ạ ?
@Plumpboy cảm ơn bạn nghe có vẻ rất hợp lý để mình thử xem.
@tinhtn89 Bạn thử sửa
--->
số query sẽ không tăng theo số record mà sẽ tăng theo deep của tree, thử check xem kết quả
DaiLy::where('affID',2)->with('childrenCategories')->get()có là 1 collection không ? ok rồi thì làm bước tiếp theobạn muốn paginate list bao gồm con nó, con của con nó .... đúng không ?
vậy thì phải map lại kết quả, ở đây bạn xử lý ở server, nên bạn có thể viết 1 hàm để map lại nó, trong model hay helper hay gì tùy bạn
pseudocode
Cảm ơn bạn đã chia sẻ. Bài viết rất hay!
Cho mình hỏi thêm chút mình muốn phân trang theo kiểu Scroll ở bản Mobile, nhưng trên bản Desktop thì vẫn giữ kiểu phân trang 1,2,3,4,5. Mình thấy dữ liệu có trả về totalCount(tổng số bản ghi), số bản ghi trên 1 trang --> vậy mình đã tính ra được số trang sẽ có.
Nhưng giờ áp dụng kiểu phân trang truyền thống thì mình lấy Scroll Id kiểu gì bạn nhỉ ?
Cảm ơn bạn, có vẻ bạn chưa hiểu ý của mình lắm. Cái mình cần là phân trang mà chưa phân trang được. Nó có 1 điểm khù khoằm ở đây là khi dùng paginate(10) thì nó lấy đủ 10 cái và phân trang nhưng ở đây lại sử dụng đệ quy gọi ngược trở lại và như thế thì những thằng gọi đến child đó nó lại không nằm trong truy vấn nên paginate not work.
cho mình hỏi tại sao mình ko run luôn file index.js mà phải run qua file bundle.js ? Mình thấy nó cũng như nhau mà?
Cho mình hỏi là tại sao mình không include file index.js vào file index.html luôn mà phải include file bundle.js. Thấy cũng không khác nhau mà?
cái đầu xài trên ie dc ko bạn
Mình trao đổi trên mail nhá.