неопределенная локальная переменная или метод `json' в JBuilder

Когда я пытаюсь получить все категории (индексное действие), возникает ошибка:

undefined local variable or method `json'

А вот в шоу-действии все нормально. Все файлы имеют расширение .jbuilder. Вот код контроллера:

def index
  @categories = Category.all
end

# GET /categories/1
# GET /categories/1.json
def show
  @category = Category.find(params[:id])
end

Трассировки стека:

app/views/categories/index.json.builder:1:in_app_views_categories_index_json_builder___502133872307116590_70140532925300' actionpack (3.2.11) lib/action_view/template.rb:145:inblock in render'
activesupport (3.2.11) lib/active_support/notifications.rb:125:ininstrument'
actionpack (3.2.11) lib/action_view/template.rb:143:in
render'


person Meliborn    schedule 24.01.2013    source источник
comment
Трассировка стека и ваш index.json.jbuilder могут быть полезны   -  person Daniel Evans    schedule 25.01.2013
comment
index.json.jbuilder пуст.   -  person Meliborn    schedule 25.01.2013


Ответы (2)


Попробуйте переименовать файл index.json.builder в index.json.jbuilder

person wedy    schedule 18.03.2013
comment
Мне также пришлось перезапустить свой сервер. - person Nathan Colgate; 19.02.2015
comment
Я сделал это и перезапустил свой сервер, и у меня все еще есть проблемы. - person Abram; 29.10.2016
comment
Где этот файл? Нигде не могу найти. Как я могу получить другой, если я не могу найти оригинал? - person arshbot; 06.11.2017
comment
Я тоже слепой и потенциально немой. - person Smitty; 17.09.2019
comment
изменение .builder на .jbuilder работает. Спасибо - person gsumk; 07.01.2020

Вы также можете переименовать его в index.json.jpbuilder и использовать этот гем: https://github.com/bigjason/jpbuilder (если вы хотите JSONP)

person Caleb    schedule 20.11.2014