3

フロントページにより多くの「ニュース」をロードできるページを作成しています。現在 4 つの「ニュース」があり、Load More ボタンを押すと、4 つの新しいニュースが読み込まれます。

プレーンなphpとajaxでそれを行う方法を知っています。しかし、Symfony 2 でそれを行う方法がわかりません。

このサイトのコード例をソースとして使用http://www.9lessons.info/2009/12/twitter-style-load-more-results-with.html

どんな助けでも大歓迎です。

4

2 に答える 2

1

より多くのニュースを取得するための別のルートを作成します。たとえばnews/get/[index]、コントローラーはdbからニュースオブジェクトを取得し、json形式で出力します。

public function yourControllerAction(){
  $news = //objects fetched from db

  //set json header
  $response = new Response();
  $response->headers->set('Content-Type', 'application/json');
  $response->setContent(json_encode($news);
  return $response;
}

そして、あなたのページでは、生のJavaScriptまたはmustache. json 出力を微調整するためにJMSSerializerBundleを確認することもできます。

于 2012-04-12T10:58:32.143 に答える
0

最も簡単なアプローチは、組み込みコントローラーを使用することです: http://symfony.com/doc/current/book/templating.html#embedding-controllers

デフォルトで 0 または同様の値を指定します (ニュース ID をお勧めします)。次に、組み込みコントローラは、ニュース ID が 0 の場合は最新の 4 つのニュースをロードします。または、指定した ID (最後に表示したニュースの ID) の後に来る次の 4 つのニュースをロードします。

コードの重複はありません。

于 2012-04-12T10:14:58.423 に答える