Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 您可以在单个Rails迁移中进行上、下和更改吗?_Ruby On Rails_Ruby_Migration - Fatal编程技术网

Ruby on rails 您可以在单个Rails迁移中进行上、下和更改吗?

Ruby on rails 您可以在单个Rails迁移中进行上、下和更改吗?,ruby-on-rails,ruby,migration,Ruby On Rails,Ruby,Migration,我有一个迁移,需要转换数据,因为有一个模式更改,一些数据需要合并。我只需要在up和down函数中手动合并它,但在up和down中也有一些非常重复的操作,用于更改列。有没有什么方法可以让我有一个change函数,也许只是在代码中调用它作为特定的时间,它会检测它是向上还是向下 迁移在这里: 谢谢是的,你可以。更重要的是:您可以使代码更漂亮: def change # Here we putting reversible part of our migration reversible do

我有一个迁移,需要转换数据,因为有一个模式更改,一些数据需要合并。我只需要在up和down函数中手动合并它,但在up和down中也有一些非常重复的操作,用于更改列。有没有什么方法可以让我有一个change函数,也许只是在代码中调用它作为特定的时间,它会检测它是向上还是向下

迁移在这里:


谢谢

是的,你可以。更重要的是:您可以使代码更漂亮:

def change
  # Here we putting reversible part of our migration
  reversible do |dir|
    dir.up do
      # code that performs irreversible part of migration
    end
    dir.down do
      # code that performs irreversible part of rollback
    end
  end
end

是的,你可以。更重要的是:您可以使代码更漂亮:

def change
  # Here we putting reversible part of our migration
  reversible do |dir|
    dir.up do
      # code that performs irreversible part of migration
    end
    dir.down do
      # code that performs irreversible part of rollback
    end
  end
end

是的,你可以。更重要的是:您可以使代码更漂亮:

def change
  # Here we putting reversible part of our migration
  reversible do |dir|
    dir.up do
      # code that performs irreversible part of migration
    end
    dir.down do
      # code that performs irreversible part of rollback
    end
  end
end

是的,你可以。更重要的是:您可以使代码更漂亮:

def change
  # Here we putting reversible part of our migration
  reversible do |dir|
    dir.up do
      # code that performs irreversible part of migration
    end
    dir.down do
      # code that performs irreversible part of rollback
    end
  end
end

迁移是一次性的,我不会浪费时间或精力让它们变得漂亮,只是让它们可靠和功能化。虽然这是真的,但这更多是供将来参考,因为它可以节省我的时间迁移是一次性的,我不会浪费时间或精力让它们漂亮,只是让它们可靠和功能化。虽然这是真的,这更多是为了将来的参考,因为它可以为我节省时间迁移是一次性的,我不会浪费时间或精力使它们漂亮,只是让它们可靠和功能。虽然这是事实,但这更多是为了将来的参考,因为它可以为我节省时间迁移是一次性的,我不会浪费时间或精力使它们漂亮,这是真的,但更多的是供将来参考,因为它可以节省我的时间