jbuilderを使って2つのインスタンス変数をjson形式で返す実装がうまくいきません
######API
@tweetsと@total_pagesを定義してjbuilderファイルを使用
def index @tweets = Tweet.all @total_pages = 3 render 'index', formats: 'json', handlers: 'jbuilder' end
######index.json.jbuilder
データを整形します
この時@tatal_pagesの場所でエラーが起きてしまいます
json.array! @tweets do |tweet| json.nickname tweet.user.nickname json.text tweet.text json.school_a tweet.school_a.name json.school_b tweet.school_b.name json.title tweet.title_info json.id tweet.id json.time tweet.created_at.strftime("%Y年%m月%d日 %H時%M分") end json.set! :total_pages,@total_pages //エラー発生
エラー内容
Jbuilder::ArrayError in Api::V1::Tweets#index Failed to add "total_pages" property to an array
set!をarray!に変えたりしてみましたがエラーが発生してしまいます
ブロックの中に入れるのではなく、2つ別々でjson形式で返すことは可能でしょうか?
teratailはweb系の質問に弱いですがよろしくお願いいたします
あなたの回答
tips
プレビュー