gpt4 book ai didi

ruby-on-rails - Rails 4 中的单表继承

转载 作者:数据小太阳 更新时间:2023-10-29 08:23:36 27 4
gpt4 key购买 nike

我正在尝试在 Rails 4 中实现一个稍微简单的 STI,但有些事情我还无法实现。

我有以下类(class):

class Person < ActiveRecord::Base
end

class NaturalPerson < Person
end

class LegalPerson < Person
end

class Employee < NaturalPerson
end

class Customer < NaturalPerson
end

问题是,我有一些属性我只想从 Employee 类访问,一些属性只能从 Customer 类访问,等等,但我找不到方法。如果我要使用 Rails 3 的方式,我会用 attr_accesible 来解决它。但现在这是不可能的,因为我既没有使用 attr_accesible gem,也不愿意使用。

最佳答案

我会在我的 Controller 中使用不同的 person_params,

def person_params
params.require(:person).permit(:email, :last_name, :first_name)
end

def natural_person_params
params.require(:person).permit(:email, :job, :location)
end

并创建一个方法,我将在其中测试对象的类名或类型属性,因为它是 STI)以确定要使用哪些参数...

希望对你有帮助

干杯

关于ruby-on-rails - Rails 4 中的单表继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17480029/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com