【问题标题】:ActiveRecord associations for existing database现有数据库的 ActiveRecord 关联
【发布时间】:2014-10-09 09:18:22
【问题描述】:

我正在将一个 PHP 应用程序转换为 Rails 并使用现有的数据库。我是 Rails 新手,很难为以下模型提出正确的关联(和命名约定):

baseball_players (one record per player)
    id, first_name, last_name, etc
baseball_stats (multiple records per player)
    player_id, year, position_id
baseball_positions (unique position names and id: a lookup table)
    id, position_name
baseball_players_positions (multiple player positions per player)
    player_id, year, position_id

我能够轻松地将球员和统计模型关联起来,但我没有运气将它们全部结合在一起。

任何提示或帮助将不胜感激。

【问题讨论】:

    标签: ruby-on-rails ruby activerecord


    【解决方案1】:

    您的表完全符合 Rails 模式,您只需在它们上加上前缀。如果可以,您可以删除前缀,或者,如果您不是,您有两个实现选项。一个是configuring the active record 将前缀添加到所有模型表中。另一种方式是通过table_name方法为每个模型设置表前缀。

    要配置活动记录,您可以将以下代码放入applicarion.rb 文件中:

    config.active_record.table_name_prefix = 'baseball_'
    

    【讨论】:

    • 谢谢佩德罗。我不知道我可以配置 ActiveRecord 来添加前缀。明天我会试一试,但我觉得这是我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多