উত্তর:
আপনার টার্মিনালে প্রথম:
rails g migration change_date_format_in_my_table
তারপরে আপনার স্থানান্তর ফাইলটিতে:
রেলগুলির জন্য> = 3.2:
class ChangeDateFormatInMyTable < ActiveRecord::Migration
def up
change_column :my_table, :my_column, :datetime
end
def down
change_column :my_table, :my_column, :date
end
end
change
পদ্ধতির পরিবর্তে ব্যবহার করা হয় না up
এবং down
পদ্ধতি, ইহার কারণ পদ্ধতি সমর্থন করে না মাইগ্রেশন সংজ্ঞা । change
change_column
এছাড়াও, আপনি যদি রেল 3 বা আরও নতুন ব্যবহার করেন তবে আপনাকে পদ্ধতি up
এবং down
পদ্ধতিগুলি ব্যবহার করতে হবে না । আপনি কেবল ব্যবহার করতে পারেন change
:
class ChangeFormatInMyTable < ActiveRecord::Migration
def change
change_column :my_table, :my_column, :my_new_type
end
end
This migration uses change_column, which is not automatically reversible.
To make the migration reversible you can either:
1. Define #up and #down methods in place of the #change method.
2. Use the #reversible method to define reversible behavior.
R.২ এবং ails টি কারাগারে, বেঞ্জামিনের জনপ্রিয় উত্তরের কিছুটা আলাদা বাক্য গঠন রয়েছে।
আপনার টার্মিনালে প্রথম:
$ rails g migration change_date_format_in_my_table
তারপরে আপনার স্থানান্তর ফাইলটিতে:
class ChangeDateFormatInMyTable < ActiveRecord::Migration
def up
change_column :my_table, :my_column, :datetime
end
def down
change_column :my_table, :my_column, :date
end
end
একটি পরিবর্তন_ কলামের পদ্ধতি আছে, কেবলমাত্র আপনার টাইগারে এটি নতুন টাইপ হিসাবে ডেটটাইম সহ চালিত করে ।
change_column(:my_table, :my_column, :my_new_type)
আফাইক, মাইগ্রেশনগুলি স্কিমা পরিবর্তনগুলি করার সময় আপনার যে ডেটা (অর্থাত্ উত্পাদন) যত্নশীল তা পুনরায় আকার দেওয়ার চেষ্টা করার জন্য রয়েছে। সুতরাং এটি ভুল না হলে এবং যেহেতু তিনি বলেছিলেন যে তিনি ডেটা সম্পর্কে কোনও চিন্তা করেন না, তাই কেন কেবল তারিখ থেকে তারিখের সময় পর্যন্ত মূল স্থানান্তরকরণের কলামের ধরণটি সংশোধন করে মাইগ্রেশনটি পুনরায় চালাবেন না? (আশা করি আপনি পরীক্ষা পেয়েছেন :))।
rake db:migrate:reset
জন্য এটিই।