1

私はこれらすべての PHP フレームワークについて非常に初心者です。phpbb のテンプレート関数、言語サポート、およびセッションを使用して、独自のフレームワークを作成したことがあります。それらを Model-View フレームワークに変えました。それは複雑すぎると判断し、新しいフレームワークを探しました。

現在、私はlaravelを使用していますが、それでもコントローラーとビューの処理方法がわかりません。これが私の立ち往生した部分です。

file.php をルート フォルダーに作成し、.html ファイル スタイル フォルダーを作成することで、phpbb のフレームワークを使用していました。phpbb のフレームワークは、次を呼び出して html ファイルをレンダリングできます。

$template->set_filenames(array(
'body' => 'file.html'
));

ただし、次のように、controller.php からすべての変数を file.html に渡すことができます。

$template->assign_var('THREAD_ID', $row['id']);
$template->assign_var('THREAD_NAME', $row['title']);

even cycles were too easy

while ($row = $db->sql_fetchrow($result))
{
    $template->assign_block_vars('post_row', array
    (
        'ID'    =>  $row['post_id'],
        'COUNT' => $count++,
        'USERNAME' => $row['post_username'],
        'DATE' => $row['post_datetime'],
        'ENTRY' => $row['post_entry'],
    )
    );
}

 and then for rendering the view

 $template->set_filenames(array(
 'body' => 'file.html'
 ));

これは私がlaravelで理解できなかったことです。これを使用していますが、これを別の変数に使用するとエラーが発生します。

$this->layout->nest('content', 'index', array(
  'data' => 'pokeçu'
));

ドキュメントでは、1 つの変数だけの例を作成しました。私は自分の道を続ける方法を知りません。

4

1 に答える 1

3

現在の安定版である Laravel 3 を使用していると仮定しています。これをカバーするLaravelドキュメントのセクションがあります。基本的に、アプリに最適な方法で View クラスを使用します。コントローラー メソッド (またはルート クロージャー) は、常に何か (通常は View インスタンス) を返すことに注意してください。そのビューにデータをバインドする最も簡単な方法は、with($data[, $value]) を使用することです。ここで、$data は連想キーと値の配列、または $data はキーで $value は値です。例えば:

public function get_index()
{
    $thread = array('id'=>23, 'name'=>'Skidoo');
    return View::make('home.index')->with($thread);
}

リターンに注意してください。すぐに返す必要はありません。View オブジェクトをインスタンス化し、データを直接バインドすることもできます。

public function get_index()
{
    $view = View::make('home.index');
    $view->thread = array('id'=>23, 'name'=>'Skidoo');
    $view->welcome = 'Welcome to My Site!';
    return $view;
}

ドキュメントに加えて、いくつかの最近のチュートリアル ブックが利用可能です。Laravel Web サイト ( http://laravel.com/ ) の Learn セクションを確認してください。

于 2013-01-04T19:27:04.657 に答える