0
ユーザーと投稿の2つのテーブルがあります。私はこれら2つのテーブルの間に関係を作りました。保存しようとすると、ユーザーが作成した投稿が表に投稿されます。それはユーザーのIDを渡しません。 (現在ログインしているユーザーのIDを取得できません
ユーザーモデル(APP \ User.php)
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Contracts\Auth\Authenticatable;
class User extends Model implements Authenticatable
{
use \Illuminate\Auth\Authenticatable;
public function posts()
{
$this->hasMany('App\Post');
}
}
ポストモデル(APP \ Post.php)
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
public function user()
{
$this->belongsTo('App\User');
}
}
郵便コントローラ:以下のコードをご確認くださいApp \ Http \ Controllers \ PostController.php)
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Post;
class PostController extends Controller
{
public function postCreatePost(Request $request)
{
//validation here will come
$post = new Post();
$post->body = $request['body'];
$request->user()->posts()->save();
return redirect()->route('dashboard');
}
}
の
エラー
以下のように私のコードを変更したり、 '$要求 - >ユーザー() - > posts->保存($ポスト)' – felipsmartins
は実際に、私は説得力の関係の前にリターンを追加するのを忘れ。なぜ私は現在のログインユーザーIDで引っ張ったり保存したりできないのですか? –