2017-04-11 3 views
1

私はLaravelバージョン5.4を使用しています。私はテーブルと呼ばれるユーザーを持っており、各ユーザーは、以下の列があります。Laravel create userステートメントが特定の列を格納していません

Schema::create('users', function (Blueprint $table) { 

      $defaultValue = 0; 

      $table->increments('id'); 
      $table->string('name'); 
      $table->string('email')->unique(); 
      $table->string('facebook_id')->unique(); 
      $table->string('avatar'); 
      $table->integer('newsletter')->default($defaultValue); // <- 
      $table->bigInteger('category_1')->default($defaultValue); // <- 
      $table->bigInteger('category_2')->default($defaultValue); // <- 
      $table->bigInteger('category_3')->default($defaultValue); // <- 
      $table->timestamp('unlocked_tip_of_category_1_at')->nullable(); 
      $table->timestamp('unlocked_tip_of_category_2_at')->nullable(); 
      $table->timestamp('unlocked_tip_of_category_3_at')->nullable(); 
      $table->rememberToken(); 
      $table->timestamps(); 
     }); 

問題は、私はユーザーを作成する機能を使用する場合category_1category_2category_3が1である、新しい値を取らないということです。

のFacebookからの認証を取った後、私は店の利用者の情報を、以下の使用:

return User::create([ 
      'name' => $facebookUser->name, 
      'email' => $facebookUser->email, 
      'facebook_id' => $facebookUser->id, 
      'avatar' => $facebookUser->avatar, 
      'newsletter' => 0, 
      'category_1' => 1, 
      'category_2' => 1, 
      'category_3' => 1, 
     ]); 

例えばFacebookのユーザー名の変更をname。また、私はsuccessfuly最後に名前と+を "HEY" 保存

'name' => $facebookUser->name . " HEY",

'name' => $facebookUser->name,

を変えてみました。 (これが確実に実行されるように)。

カテゴリは、タイプを意味するbigIntegerです。私は0に設定したデフォルト値で何かが起こったと思っています。

アイデア?それ以上の情報が必要な場合は、私に知らせてください。私はこの問題を解決するための最良の方法を達成しようとしていたものから

  • 1$defaultvalueを変更することですが、これは動作しない理由を私は理解していません。
+3

カテゴリは入力可能ですか?あなたのモデルはどこですか? – apokryfos

+0

まあ、私はそれを完全に忘れました。あなたが望むなら、答えとして投稿してください –

答えて

0

あなたは、デフォルトのlaravel足場を使用している場合は、あなたが入力可能なよう持っている必要があり、すべての列に基づいて、デフォルトApp\Userモデルを更新していることを確認する必要があります。

class User extends Model { 

    protected $fillable = [ 
    'name', 'email', 'password','facebook_id','avatar','newsletter', 
     'category_1', 'category_2', 'category_3' 
    ]; 
    ... 
    } 

同じあなたの場合には適用されあなた自身のモデルを作成しています。