laravelの学習をし始めた初心者です。2つ質問したいです。eloquantを調べているときに思ったのですが、例えば、Auth機能を備えたusersテーブルと,postsテーブルがあるとして、
1つ目は、ユーザー情報を取得したい場合、
UserControllerに
$items = User::where('user_id',$request->user_id)->get(); (user_idというカラムを自作しました)
return view('userpage', ['items' => $items]);
と書いたら、passwordやemailなどの情報も取得しますが、ビューフォルダ(userpage)で表示させなければ問題ないのでしょうか。
2つ目も似たような質問ですが、
とある投稿(post)のウェブページで投稿したユーザー情報を取得したい場合、
モデルのPost.phpに
public function user()
{
return $this->belongsTo('App\Models\User');
}
と書きますが、この場合でも、取得するカラムの制限をしなくてもビューフォルダで表示させなければ問題はないのでしょうか。
<追記>
回答、修正依頼ありがとうございます。
この質問をしたときは、多数のユーザーが投稿できる簡易的なブログといったアプリケーションを想定していました。この場合では、セキュリティ上問題ないと理解しています。
追加の質問として、セキュリティ要件が厳しい中でDBから情報を取得する際、最も安全な形はどういったものなのか興味を持ちました。ご回答の中で指摘いただいたような、フロントのSSRを利用したり、APIを提供する場合を想定しています。node.js(vue.jsなどを使うときに使うもの?)やAPIについて分かっていないのでぼんやりとした質問になってしまいますが、ご回答いただけれればありがたいです。
回答2件
あなたの回答
tips
プレビュー