在RoR中的数据库表中创建请求时,抛出此错误:
缺少 Zayavk#sotrudnikis 关联的模型类 Sotrudnikis。您可以使用 :class_name 选项指定不同的模型类。
这个模型是存在的,甚至连联系都被阐明了。这里可能出了什么问题?
class Zayavk < ApplicationRecord
belongs_to :sotrudnikis
belongs_to :kii_objs
belongs_to :incidents_types
belongs_to :zayavka_statuses
end
class Sotrudniki < ApplicationRecord
belongs_to :dolznosti
belongs_to :role
validates :s_name, presence: true, uniqueness: true
has_secure_password
end
# Части кода контроллера, выдающего ошибку:
def create
@zayavk = Zayavk.new(zayavk_params)
respond_to do |format|
if @zayavk.save
format.html { redirect_to @zayavk, notice: "Zayavk was successfully created." }
format.json { render :show, status: :created, location: @zayavk }
else
format.html { render :new, status: :unprocessable_entity }
format.json { render json: @zayavk.errors, status: :unprocessable_entity }
end
end
end
Rails 有一种通过连接名称来确定类名称的机制,这就是通常的复数化(pluralization)。它对于英语来说非常有效,但它不能处理像你这样的音译。有两个选项 - 显式指定连接的 class_name 或切换到英语,后者更可取且更具可读性。例如,请求和员工
另请注意,在“belongs_to”中,我们以单数表示关系,因为存在一个实体。