আমি মদ রঙের ট্র্যাক রাখতে ums.১ রেলগুলিতে এনাম ব্যবহার করছি।
Wine.rb
class Wine < ActiveRecord::Base
enum color: [:red, :white, :sparkling]
end
আমার দৃষ্টিতে, আমি একটি নির্বাচন উত্পন্ন করি যাতে ব্যবহারকারী নির্দিষ্ট রঙের সাথে একটি ওয়াইন নির্বাচন করতে পারে
f.input :color, :as => :select, :collection => Wine.colors
এটি নিম্নলিখিত HTML তৈরি করে:
<select id="wine_color" name="wine[color]">
<option value=""></option>
<option value="0">red</option>
<option value="1">white</option>
<option value="2">sparkling</option>
</select>
তবে, ফর্মটি জমা দেওয়ার পরে, আমি উল্লেখ করে একটি যুক্তি ত্রুটি পেয়েছি '1' is not a valid color
। আমি বুঝতে পারছি এটি কারণ color
সমান 1
এবং না "1"
।
রেলগুলি স্ট্রিংয়ের পরিবর্তে পূর্ণসংখ্যা হিসাবে রঙটি ব্যাখ্যা করতে বাধ্য করার কোনও উপায় আছে?
f.select :color, Wine.colors.to_a.map { |w| [w[0].humanize, w[0]] }
কারণw
একটি অ্যারের প্রতিনিধিত্ব করা হয়েছিল represented কেন নিশ্চিত নয়, তবে সম্ভবত এটি কাউকে সহায়তা করবে।