所以我有下面的迁移-典型的评分表,它捕获评论的评分(值)。我有一些主键(pk)、外键(fk)、索引(index)的助手方法,这些方法都很好。
所以一切正常,但我注意到注释id上的foregn键没有被创建,即使这条语句没有报告错误。任何帮助都将不胜感激。谢谢。
执行(“ALTER TABLE ratings ADD
限制fk U评级U评论id
外键(注释id)引用
删除级联时的应答(id)

class CreateRatings < ActiveRecord::Migration

  extend MigrationHelpers

  def self.up
    create_table :ratings, :id => false do |t|
      t.integer :comment_id, :null => false
      t.integer :user_id, :null => false
      t.integer :value, :null => false, :limit => 1
      t.timestamps
    end

    pk :ratings, %w{ comment_id  user_id }
    fk :ratings, :comment_id, :comments, true
    fk :ratings, :user_id, :users
    index :ratings,  %w{ comment_id value }
  end

最佳答案

请尝试此操作,而不要使用“t.integer:comment\u id,:null=>false”
参考:表名,:选项

关于mysql - Rails迁移问题-未创建外键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3303216/

10-10 22:00