একাধিক বৈশিষ্ট্যের স্বতন্ত্রতার জন্য রেল 3 বৈধতা


177

আমি রেলগুলি 3.0.0.beta4 ব্যবহার করি

আমি দু'টি গুণের উপর স্বতন্ত্রতা একটি বৈধতা যোগ করতে চান, তার মানে যে আমার মডেল বৈধ হলে কয়েক 'recorded_at'এবং 'zipcode'অনন্য।

একটি বৈশিষ্ট্য এখানে সিনট্যাক্স হয়

validates :zipcode, :uniqueness => true

ধন্যবাদ

উত্তর:


333

2 রেলগুলিতে, আমি লিখতাম:

validates_uniqueness_of :zipcode, :scope => :recorded_at

কারাগারে 3:

validates :zipcode, :uniqueness => {:scope => :recorded_at}

একাধিক বৈশিষ্ট্যের জন্য:

validates :zipcode, :uniqueness => {:scope => [:recorded_at, :something_else]}

7
আমি বলব যে যুক্তিযুক্তভাবে এটি আরও বেশি বোঝা যায় যে আপনি recorded_atএকটি জিপকোডের আওতার মধ্যে অনন্য হতে হবে। validate :recorded_at, : uniqueness => { :scope => :zipcode }
— অ্যারিজান

2
আপনি এখনও এটি 2 টি রেলপথটি করতে পারেন এবং আপনি একই সম্পত্তিতে বেশ কয়েকটি ধরণের বৈধতা না দিলে আমি আরও পড়তে পেলাম।
— জেম

24
আপনি তিনটি দলের সাথে বৈধতা দিতে হবে validates :zipcode, :uniqueness => {:scope => [:recorded_at, :something_else]}?
— গ্রেগ গুইডা

5
আমি যুক্ত করব যে আপনি যদি :scopeবিদেশী কীগুলিতে ব্যবহার করতে চান তবে একটি "বেসিক" কাজ করা সত্ত্বেও আপনাকে :fkey_idচিহ্নগুলির পরিবর্তে চিহ্নগুলি ব্যবহার করতে হবে:fkey:uniqueness:fkey
— nbarraille

1
আপনি সম্ভবত একটি কাস্টম ত্রুটি যুক্ত করতে চান , :message => ' is taken for this recorded date'
— _

96

একাধিক স্কোপ পরামিতি:

class TeacherSchedule < ActiveRecord::Base
  validates_uniqueness_of :teacher_id, :scope => [:semester_id, :class_id]
end

http://apidock.com/rails/ActiveRecord/Validations/ClassMethods/validates_uniqueness_of

এটি গ্রেগের প্রশ্নের উত্তর দেওয়া উচিত।


গ্রেগ 'বৈধতা' শর্টকাট ব্যবহার করতে আরও আগ্রহী বলে মনে হয়েছিল, তাই তার প্রশ্নের একটি দ্রুত উত্তর হ্যাঁ "হ্যাঁ"
— এলসি

এটি জানা বেশ গুরুত্বপূর্ণ, আমি স্কোপগুলিতে অ্যাসোসিয়েশনগুলির জন্য যাচাই করার সময় আমার যদি _id (বা না) ব্যবহার করা উচিত তবে আমি ঠিক এটি খুঁজছিলাম।
— ফ্রান্সেস্কো বেলাদোনা

পাগল 4.1.6 validates_uniqueness_of মধ্যে এই উত্তরটি কাজ: cart_id, সুযোগ: [: location_id: plug_id]
— কোনোর

6

আমার জন্য কাজ না, বহুবচন মধ্যে সুযোগ রাখা প্রয়োজন

বৈধতা_সৌধিকতা_শব্দ: শিক্ষক_আইডি, স্কোপ এস => [: সেমিস্টার_আইডি,: শ্রেণি_আইডি]

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