jsonを返すapiを作っています。

モデルは2つあり、
- post
- user
となっています。

関係はpost >- userという感じで、ユーザーが複数のポストを持っています。

例えば全ての情報をかえす場合は

{
  posts: [{
    id: 1,
    name: title1,
    user: {
      id: 1
      name: name1
    }
  }, {
    id: 2,
    name: title2,
    user: {
      id: 1
      name: name1
    }
  }]
}

このようなjsonを返したいと考えています。

ただ、Post.all.to_jsonとしてしまうとUserモデルの情報が含まれず、書き方がわかりません。
上記のような形にしたい場合はどのようにコードを書いてJsonを生成するのが良いのでしょうか。