Laravel3 を WebMatrix3 で開発しロリポップで公開する no.10 【Form の出力】

ロリポップ環境とローカル環境での設定ファイルの切替方法を前回紹介しました。今回は、前々回で作成したテーブルに情報を登録するためのページを作成したいと思います。

新たなコントローラ signup.php を作成します。内容は以下のとおりです。

<?php

class Signup_Controller extends Base_Controller
{
    public $restful = TRUE;

    public function get_index()
    {
        
    }

    public function post_index()
    {
        
    }
}

ここから作りこんで聞きます。メンバー変数 $restful を ture で上書きすると、RESTful なコントローラーを作成することができるようになります。action_xxxxx だったところが、 get_xxxxx、post_xxxxx のように、HTTPメソッドによって処理を切り替えることができるようになります。

get でアクセスされたときは入力フォームを表示して、post でアクセスされたときは登録するように処理を追加して行きたいと思います。ルーティングを追加し、 singup.blade.php を追加します。内容は以下のとおり。

{{ Form::open(\'signup\') }}

<p>{{ Form::label(\'email\', \'メールアドレス\') }}</p>
<p>{{ Form::text(\'email\') }}</p>

<p>{{ Form::label(\'password\', \'パスワード\') }}</p>
<p>{{ Form::password(\'password\') }}</p>
<p>{{ Form::label(\'password_confirmation\', \'パスワード(確認用)\') }}</p>
<p>{{ Form::password(\'password_confirmation\') }}</p>

<p>{{ Form::submit(\'登録\') }}</p>

{{ Form::close() }}

signup.php にビューの呼び出しを追加します。

<?php

class Signup_Controller extends Base_Controller
{
    public $restful = TRUE;

    public function get_index()
    {
        return View::make(\'signup\');
    }

    public function post_index()
    {
        
    }
}

blade テンプレートで Form を作成するときは、Form クラスを使用します。スタティックにフォームのアイテムと同名のメソッドを呼び出して作成します。第一引数で name 属性を指定します。open メソッドで Form の開始タグを作成します。第一引数に action 先を指定することができ、第二引数にメソッドタイプを指定できます。省略時は POST メソッドが出力されます。 close メソッドで Form の終了タグを作成します。

次回は post 時の処理を追加していこうと思います。

それでは今回はここまで。

カテゴリー: Laravel3, Web, WebMatrix, ロリポップ タグ: , , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です