ikemonn's blog

技術ネタをちょこちょこと

【Laravel】Laravelでformを作る

Laravelのコード

{{ Form::open(array('url' => 'contact')) }}
{{ Form::label('Subject') }}
{{ Form::text('subject', 'Subjectを入力') }}
<br />
{{ Form::label('Message') }}
{{ Form::textarea('message', 'Messageを入力') }}
<br />
{{ Form::submit() }}
{{ Form::close() }}

出力されるHTML

<form method="POST" action="http://localhost:8000/contact" accept-charset="UTF-8">
    <input name="_token" type="hidden" value="XXXX">        
    <label for="Subject">Subject</label>
    <input name="subject" type="text" value="Subjectを入力">
    <br />
    <label for="Message">Message</label>
    <textarea name="message" cols="50" rows="10">Messageを入力</textarea>        
    <br />
    <input type="submit">        
</form>

説明

{{Form::open('URI', 'リクエスト方法', 'HTML属性(id, class, style, title等)')}}

フォームを開くときに使用する。

  • 第一引数のデフォルト値:現在のURI
  • 第二引数のデフォルト値:POST

引数を全て省略すると現在のURIにPOSTするフォームを開く

{{ Form::close() }}

フォームの閉じタグ(</form>)を生成する

{{ Form::subject('ラベル名', '表示名', 'HTML属性') }}

ラベルタグの生成

{{ Form::text('要素名', 'デフォルト値', 'HTML属性') }}

テキスト入力欄の生成

{{ Form::textarea('要素名', 'デフォルト値', 'HTML属性') }}

テキストエリアの生成

{{ Form::submit('表示文字列') }}

submitボタンの生成

参考

Learning Laravel: The Easiest Way

Laravelでフォーム作成