代码之家  ›  专栏  ›  技术社区  ›  Mark

Rails-命名空间迁移

  •  0
  • Mark  · 技术社区  · 6 年前

    我有以下模型和迁移:

    class Content::Panels::Iframe < Content::Panel
      ## Associations ##
      belongs_to :panel_holder, polymorphic: true
    
      ## Validations ##
      validates :uri, presence: true
    
      ## Methods ##
      def self.plural_name
        'iframe_index'
      end
    end
    
    class AddHeightToIframes < ActiveRecord::Migration[5.1]
      def change
        add_column :iframes, :height, :integer, after: :headline
      end
    end
    

    迁移失败,因为没有名为“iframes”的表。在谷歌搜索之后,我尝试添加到iframe类:

    self.table_name_prefix = 'content_panels_'
    self.table_name = 'content_panels_iframes'
    

    并将表标题更改为“内容面板”iframes,但是当单独或一起尝试时,这两种方法都不起作用。

    我做错什么了?提前谢谢

    1 回复  |  直到 6 年前
        1
  •  2
  •   lafeber    6 年前

    当表名为 content_panels_iframes ,迁移应该是:

    add_column :content_panels_iframes, :height, :integer, after: :headline