我使用Rails 5上的ruby创建了一个小项目。我想为显示论文记录创建索引页。所以我写道:
def index
respond_to do |format|
format.html
format.json {
render :json => Thesis.all
}
end
end
此方法应显示论文记录(例如html和json),但像html一样,当我询问从puma服务器收到的localhost:3000 / theses.json时,此错误:
SystemStackError (stack level too deep):
app/controllers/theses_controller.rb:12:in `block (2 levels) in index'
app/controllers/theses_controller.rb:9:in `index'
您对此错误有任何想法吗?
这是我的论文模型:
class Thesis < ApplicationRecord
has_many_attached :img
end
谢谢。
答案 0 :(得分:0)
模型中的属性是错误的:has_many意味着可以有很多图像,但是参数'img'意味着只能有一个图像。该错误属于ActiveStorage,并且在附加的引用名称与model属性相同时引发。
使用下一步解决此错误:
has_many_attached :imgs #for multiple images
has_one_attached :img #for one image per object