2016-07-11 18 views
1

これは私が遭遇した奇妙な問題です。私は、そのデータと入力をデータベースに設定したContactPersonテーブルに取り込むFirst、Last、Title、Email、Phoneを取り込むフォームを持っています。Laravelは、フォーム入力からデータベースに "null"を挿入します。

フォームに記入して送信を押すと、タイトル、電子メール、および電話番号だけがデータベースに正しく挿入されます。最初と最後の名前はNULLとして挿入されます。

は、ここで私はPHPstormを使用している私のコードの一部とLaravel 2.5.3

私は、新しい連絡先のビューを作成しています:ここで

<h1 style="text-align:center;">Add A New Contact Person</h1> 
 

 
    <hr/> 
 

 
    {!! Form::open(['url' => '/create']) !!} 
 

 
    <span style="text-align:center;align-content:right;display:block; margin-right:auto;margin-left:auto;"> 
 

 
     <div class="form"> 
 
      {!! Form::label('first', 'First Name: ') !!} 
 
      {!! Form::text('First', null, ['class' => 'form']) !!} 
 
     </div> 
 

 
     <div class="form"> 
 
      {!! Form::label('last', 'Last Name: ') !!} 
 
      {!! Form::text('Last', null, ['class' => 'form']) !!} 
 
     </div> 
 

 
     <div class="form"> 
 
      {!! Form::label('title', 'Title: ') !!} 
 
      {!! Form::text('Title', null, ['class' => 'form']) !!} 
 
     </div> 
 

 
     <div class="form"> 
 
      {!! Form::label('email', 'Email: ') !!} 
 
      {!! Form::text('Email', null, ['class' => 'form']) !!} 
 
     </div> 
 

 
     <div class="form"> 
 
      {!! Form::label('phone', 'Phone: ') !!} 
 
      {!! Form::text('Phone', null, ['class' => 'form']) !!} 
 
     </div> 
 

 
     {!! Form::submit('Submit', ['class' => 'btn btn-primary form']) !!} 
 

 
    </span> 
 
    {!! Form::close() !!}

はResourceController Iと呼ばれる私のコントローラであり、作成済み:

class ResourceController extends Controller 
 
{ 
 
    public function resource() 
 
    { 
 
     $contacts = ContactPerson::all(); 
 

 
     return view('pages.resource', compact('contacts'));  
 
    } 
 

 
    public function create() 
 
    { 
 
     return view('pages.create'); 
 
    } 
 

 
    public function store(Requests\CreateNewContactRequest $request) 
 
    { 
 
     ContactPerson::create($request->all()); 
 

 
     return redirect('resource'); 
 
    } 
 
}

ここで私はフォームのCreateNewContactRequestクラスに設定した検証です:

public function rules() 
 
{ 
 
    return [ 
 
     'First' => 'required|min:2', 
 
     'Last' => 'required|min:1', 
 
     'Title' => 'required|min:2', 
 
     'Email' => 'required|Email|unique:users', 
 
     'Phone' => 'required|numeric|min:9' 
 
    ]; 
 
}

ここで私が記入したときに/フォームを送信するように見えるものです。

Creating new contact

それがデータベース・ダンプにリダイレクト提出打った後: after submitting

挿入後のデータベースのビューを: database

+0

チェック正しいことを確認することと同じname="First_Name"

を命名する必要がありますこれらのフィールドをすべて追加できるようにします。 –

答えて

0

あなたのダンプの詳細を見てみると、自分のフィールド名をする必要がありフォーム名を一致させるか、フォーム名を変更する必要があります。

<div class="form"> 
     {!! Form::label('first', 'First Name: ') !!} 
     {!! Form::text('First_Name', null, ['class' => 'form']) !!} 
    </div> 

    <div class="form"> 
     {!! Form::label('last', 'Last Name: ') !!} 
     {!! Form::text('Last_Name', null, ['class' => 'form']) !!} 
    </div> 

フィールド名のEG First_Nameあなたの入力はまた、あなたの充填可能な詳細もフェイルド名が充填可能な変数が持っていることも、あなたのスキーマと一致していることを

protected $fillabel = ['First_Name','Last_Name','Title','Email','Phone']; 
関連する問題