10

Laravel 4 アプリに Eloquent Article モデルがあります。現時点では空ですが、私がやりたいのは 2 つのメソッドを定義することです。

  • 次の記事を取得
  • get前の記事

だから私が使用するとき:

$article = Article::find(1);

私はフォローアップできます:

$article->getNextArticle;

$article->getPreviousArticle;

Articles モデル内の find() から返された結果にアクセスして、データを使用して SQL クエリから次の記事と前の記事を取得できるようにする必要があります。

理論的には、次のような結果になります。

class Article extends Eloquent
{
    public function getNextArticle()
    {
        // SQL query to get next article from the database
    }

    public function getPreviousArticle()
    {
        // SQL query to get previous article from the database
    }
}
4

3 に答える 3

12
Class Article extends Eloquent {

    public function getNextArticle()
    {
        return Article::where('id', '>', $this->id)->take(1)->get();
    }

    public function getPreviousArticle()
    {
        return Article::where('id', '<', $this->id)->take(1)->get();
    }
}
于 2014-02-03T18:58:03.550 に答える
0

私はおそらくこのように試してみます...うまくいくかどうかはわかりませんが

 class Article extends Eloquent
  {
    public function getNextArticle()
    {
    return Article::find($this->id+1)->get();
    }

    public function getPreviousArticle()
    {
    return Article::find($this->id-1)->get();
    }
  }
于 2013-06-28T18:18:46.340 に答える