問題タブ [entrust]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Entrust を使用した Laravel 5.2 - クラス名は有効なオブジェクトまたは文字列でなければなりません
ユーザーの登録時に問題が発生しました。ユーザーをテーブル users に保存した後、このユーザーにロールを割り当てようとしましたが、次のエラーが表示されました。
クラス名は有効なオブジェクトまたは文字列でなければなりません。
私のコードは
(App\Http\Controllers\auth\AuthController.php)
これecho
を$user
印刷してください:
{"name":"bbbbbvq","email":"bb@bbv.comq","active":1,"updated_at":"2016-03-03 19:07:24","created_at":"2016 -03-03 19:07:24"、"id":32}
entrustZizaco\Entrust\src\config\config.php
を myにコピーし、次の方法proyect\app\config\entrust.php
でファイルを変更しました。test\vendor\zizaco\entrust\src\Entrust\EntrustServiceProvider.php
php - Laravel Entrust 変更テーブル名
私はlaravel 5.2マルチ認証を使用しているので、ユーザーテーブルの代わりに新しい管理テーブルを作成しました。
役割と権限のために Entrust をインストールしました。entrust のインストール中に、entrust:migration の内容を次のように変更しました。
そしてentrust.php
次のように:
役割と権限と管理の 3 つのモデルがあります。role_management
すべて正常に動作しますが、問題は、以下のコードを使用してロールをテーブルにアタッチしたい場合です。
エラーが表示されます:
management_role
SQLSTATE [42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'digikala.management_role' が存在しません (SQL: (created_at
、、、 ) 値management_id
に挿入します (2016-03-21 14:26:24、1、1role_id
、updated_at
2016-03-21 14:26:24)))
management_role
の代わりに表示される理由がわかりませんがrole_management
、正しいテーブル名はrole_management
です。management_id
また、このテーブルにはとの 2 つの列しかありませんが、このエラーでもこのテーブルにとrole_id
を挿入したいと考えています。created_at
updated_at
composer config:cache と composer cache:clear を使用して dump-autoload を構成しましたが、何も起こりませんでした。
私のコードに何か問題がありますか? 管理モデル:
php - Laravel 5.2: entrust パッケージを統合し、役割と権限を作成してアクセスする
私はlaravelでまったく新しいです。laravel 5.2 をインストールします。私はlaravelでCRUDをやった。今、私はlaravel認証パッケージを統合したいと考えています。だから私は zizaco\entrust を選びます。
doc linkの各手順に従います。しかし、何が悪いのかわかりません。ドキュメントには、どのファイルに次のコードを追加する必要があるかについては言及されていません。
ドキュメント内のその他の以下のコード。
平
実装クラスについては言及されていません。
私がやります
しかし、私はエラーが発生しました
新しい学習者は、コードを配置する場所を見つけることができません。よく検索しますが、正しい方向性を示す完璧なドキュメントを取得できません。
役割、権限を作成する場所は? 誰でも私を助けてください。
authentication - Laravel 5.2: Entrust を使用してコントローラー アクションの役割を認証する
laravel の新機能。私はこれを Yii で行いましたが、とても簡単です。:)
Laravel バージョン: 5.2 Entrust バージョン: dev-laravel-5
私の要件を説明しましょう。私には 2 人のロール マネージャーと CEO がいます。また、次の権限があります。
上記の権限でロールを作成しました。
それでは、私が何をしたか見てみましょう。ロールをチェックする2つのミドルウェア RoleCheck と権限をチェックする PermissionCheck を作成します
RoleCheck.php
PermissionCheck.php
今、このミドルウェアを routeMiddleware 配列の Kernel.php に追加しました
追加したロールを認証する
これは完璧に機能します。しかし、役割で与えられた許可をユーザーに認証できません。
PostController.php 内
および route.php
これは完璧に機能します。ただし、この認証は許可に基づいています。しかし今、私は与えられた役割に基づいて認証したいと思っています。ルートを変更してみてください
__construct() 関数を削除しました。しかし、ここで問題に直面します。を持つユーザーはRole
、自分に割り当てられていないすべてのアクションにアクセスできます。を持つユーザーはManager
、自分に割り当てられていないすべてのアクションにもアクセスできます。
その方法は?ロールで割り当てられたアクセス許可を認証するにはどうすればよいですか。私は今、ミドルウェアと認証の間で完全に混乱しています。助けてください。
php - laravelでリソースの各メソッドに個別のミドルウェアを割り当てる
プロジェクトの ACL Manager としてZizaco/ entrust laravel パッケージを使用しています。
ミドルウェアを介してルート グループへのアクセスを制限し、それにロール (またはアクセス許可) を割り当てるには、次のようにする必要があることを知っています。
しかし、リソース コントローラーの異なるルート (メソッド) に個別のアクセス許可を割り当てたいと考えています。
リソース全体に対してどのようにできるかはわかっていますが、コントローラーメソッドごとに実装することはできません。
この権限を関連するメソッドに割り当てたい:
等々。
laravel - Laravel 5.2 アクセス制御リスト
私は Laravel を初めて使用し、Laravel 5.2 に「Entrust」プラグインを埋め込むことに非常に違和感を感じています。
Laravel 5.2に「Entrust」を埋め込む方法を教えてください。
php - zizaco entrust laravelで権限「x」を持つユーザーのリストを取得する方法は?
権限「x」を持つユーザーのリストを表示したかったのです。役割/権限を管理するために、laravel 5.1 で zizaco/entrust プラグインを使用しています。私はすでに役割と権限を設定しています。以前は役割を扱っていましたが、仕様の変更により、権限が必要になります。