Laravel 5.6でアプリケーション開発を行っています。
■目的
アプリケーション内で通常のユーザーとは別に開発者権限を持たせて、ファサードで呼び出す際、自動的に除外する仕様にしたい。
usersテーブル
id | name | age | role | super |
---|---|---|---|---|
1 | 一郎 | 30 | 1 | 1 |
2 | 次郎 | 29 | 1 | null |
3 | 三郎 | 28 | 2 | null |
上記は検討段階なのですが、Userのデータベースカラムに「super」を設置し、任意の値を入力。
Userモデル内で入力値を参照し、除外設定したいと思っています。
そしてsuperに値が入っているユーザーはログインもできるし、通常のユーザーと何ら変わりのない操作ができるが、例えばユーザー一覧などを表示する際には出てきてほしくない。
User::whereNotIn('users.super', [1])->get();
とすれば、解決しますが、この記述を毎回書くのが面倒なため、モデル内で操作したいと思っています。
■質問
・Laravel ソフトデリート
https://readouble.com/laravel/5.6/ja/eloquent.html#soft-deleting
のような機能かと思いますが、どのように設定すれば実現できるでしょうか。
・他に実装方法がありましたら、ご教授いただければ幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/08 01:29
2019/03/08 05:15