私はLaravel 5.3を使ってギターレッスンサイトを持っています。それにはレッスンがあり、練習に分かれています。Laravel 5.3のコードでは、公開/未公開ステータスに基づいてコンテンツアクセスを制御しますか?
私は本日、発表されたレッスンやエクササイズをマークする機能をバックエンドに追加することを決めました。私は単に、0または1を含むそれぞれの表に「公開された」列を追加しました。
レッスン・ビュー、エクササイズ・ビュー、レッスンなど、いくつかの形や形でエクササイズやレッスンが利用される場所がたくさんあります部分的なビュー(表形式のリスト)、部分的なビュー(表形式のリスト)、検索/クエリビュー。レッスンやエクササイズのヒット数を増やしたり、レッスンやエクササイズを自分のお気に入りに追加するなどの機能を実行するルートもあります。
上記のように、最小限のコード編集を使用して、未発表のレッスンやエクササイズへのアクセスを防止する方法はわかりません。私はコントローラのファイルを調べ始めましたが、コントローラがクエリの結果ページなどのすべてを捕まえていない可能性があることを認識しました。また、コントローラファイルには複数のメソッドが含まれているため、別々に編集する必要はありません。私は、複数のファイルで多数のクエリを修正する必要なく、私が全世界で必要としていることを行うための "ラーベル方法"があると私は思っています。 おそらくミドルウェアなのでしょうか?
いずれにしても、私はlaravelの新機能です。公開されていないとマークされているコンテンツのルートを制御しようとする試みが本当にありましたら、それについて知りたいと思います。
おかげ
これは本当に滑らかです!それを試してうまく動作します。しかし、今私はバックエンドCRUDの未発表のアイテムを見ていません...だから、これをブートメソッドに追加しました:if(!$ user-> hasRole( 'admin'))そしてすべてがうまくいくようです。もっとテストする必要がありますが、私にこれを見せてくれてありがとう! – Brian