https://github.com/maikealame/laravel-auto
Laravel Auto - a helper package to make automated lists with filters, sorting and paging like no other
https://github.com/maikealame/laravel-auto
laravel mysql pagination php postgresql sort table where
Last synced: 3 months ago
JSON representation
Laravel Auto - a helper package to make automated lists with filters, sorting and paging like no other
- Host: GitHub
- URL: https://github.com/maikealame/laravel-auto
- Owner: maikealame
- License: mit
- Created: 2017-05-09T14:28:28.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2023-01-13T23:03:34.000Z (over 2 years ago)
- Last Synced: 2025-03-23T10:51:09.851Z (4 months ago)
- Topics: laravel, mysql, pagination, php, postgresql, sort, table, where
- Language: PHP
- Homepage: https://maikealame.github.io/laravel-auto/
- Size: 6.36 MB
- Stars: 42
- Watchers: 4
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Laravel helper package to make automated lists with filters, sorting and paging like no other.
Wiki: [https://maikealame.github.io/laravel-auto/](https://maikealame.github.io/laravel-auto/)
[](https://github.com/maikealame/laravel-auto/releases)
[](LICENSE.md)
[](https://packagist.org/packages/maikealame/laravel-auto)---
**You are free to create your own layout and style, there's no layout html/css included !**
**This package only grants a very automated query in Eloquent with Blade directives.**
You can use it either without Blade directives, like Vue.js and React, but you need to implement manually the calls to backend and layout rendering.
---

---

---
```
$categories = Topic::from("topics as t")
->select("t.*")
->leftJoin("portals as p", "p.id","=","t.portal_id")
->autoWhere()->autoSort()->autoPaginate();
```
---

---
```
if (Request::has("filter")) {
if (isset(Request::get("filter")['keyword'])) {
$keyword = Request::get("filter")['keyword'];
Auto::setField("notifications.title", $keyword);
Auto::setField("notifications.description", $keyword);
}
}
$notifications = Notification::select("notifications.*", "notification_users.readed_at")
->groupBy("notifications.id")
->leftJoin("notifications_users", "notifications.id", "=", "notifications_users.notification_id")
->leftJoin("notifications_roles", "notifications.id", "=", "notifications_roles.notification_id")
->leftJoin("notifications_departments", "notifications.id", "=", "notifications_departments.notification_id")
->autoWhere(['or' => ["notifications.title", "notifications.description"]])
->autoSort(["notifications.updated_at", "desc"])->autoPaginate();
```
---
```
$enterprises = Enterprises::from("enterprises as e"))
->select("e.*")
->leftJoin("enterprise_indicators_enterprises as iei","eie.enterprise_id","=","e.id")
->groupBy("e.id")
->autoWhere()->autoSort()->autoPaginate();
```
---
See https://maikealame.github.io/laravel-auto/
---
- [Features](https://maikealame.github.io/laravel-auto#features)
- [What it do](https://maikealame.github.io/laravel-auto#what-it-do)
- [What is necessary](https://maikealame.github.io/laravel-auto#what-is-necessary)
- [Wiki](https://maikealame.github.io/laravel-auto#wiki)
- [Examples](https://maikealame.github.io/laravel-auto#example)
- [How it works](https://maikealame.github.io/laravel-auto#how-works)
1. [View](https://maikealame.github.io/laravel-auto#view)
2. [Controller](https://maikealame.github.io/laravel-auto#controller)
3. [Model](https://maikealame.github.io/laravel-auto#model)
- [How to install](https://maikealame.github.io/laravel-auto#how-to-install)