রেল মাইগ্রেশন: সীমাবদ্ধতা সরান


136

আমার কাছে একটি রেল অ্যাপ্লিকেশনটিতে একটি টেবিল রয়েছে যা (স্কিমা.আরবিতে) দেখতে দেখতে:

create_table "users", :force => true do |t|
   t.string "name", :null=>false
   t.string "address", :null=>false
end

আমি ঠিকানা ক্ষেত্রের নালাগুলি মঞ্জুরি দেওয়ার জন্য রেল ট্রান্সফার লিখতে চাই। উদাহরণস্বরূপ, স্থানান্তরিত হওয়ার পরে টেবিলটি এমন দেখাচ্ছে:

create_table "users", :force => true do |t|
   t.string "name", :null=>false
   t.string "address"
end

সীমাবদ্ধতা দূর করতে আমার কী করতে হবে?

উত্তর:



248

রেল 4+-এ নাল-সীমাবদ্ধতা সরাতে আপনি ব্যবহার করতে পারেন change_column_null:

change_column_null :users, :address, true

আপনি কি আসলে এটি চেষ্টা করেছিলেন? আপনি যদি ফাংশনের সোর্স কোডটি এক নজরে দেখেন তবে আপনি কিছুই দেখতে পাচ্ছেন না:raise NotImplementedError, "change_column_null is not implemented"
drusepth

3
এটি পোস্টগ্রেকশালে ব্যবহার করেছেন have ডাটাবেসের নির্দিষ্ট অ্যাডাপ্টারের দেখুন সংজ্ঞায়িত এটা পাগল postgres , মাইএসকিউএলএপিডকে অন্যের জন্য অনুসন্ধান করতে পারেন । সুতরাং, সমর্থনের জন্য ডাটাবেসের অ্যাডাপ্টারের চেক করতে, ক্ষেত্রে কেউ পায় থাকবেNotImplementedError
দীপক


1
এটি নির্বাচিত উত্তর হওয়া উচিত
নহত্তনাম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.