मेरे पास माइग्रेशन है:
class AddGinIndexToContacts & lt; ActiveRecord :: प्रवासन डीईएफ़ अप अमल ( "जिन का उपयोग करके संपर्क (first_name gin_trgm_ops, last_name gin_trgm_ops, नाम gin_trgm_ops) सूचकांक contacts_search_idx बनाएँ") डीईएफ़ नीचे अंत पर अमल ( "ड्रॉप सूचकांक contacts_search_idx") अंत अंत
< P> यह कोड को schema.rb
में बनाता है: add_index "contacts", ["first_name", "last_name", "name"], नाम: " contacts_search_idx ", का उपयोग करते हुए: जिन
और बाद में, जब मैं रेक db निष्पादित करें: स्कीमा: लोड
यह गलत एसक्यूएल उत्पन्न करता है:
< कोड> बनाएँ "संपर्क" का उपयोग जिन ( "first_name", "last_name", "नाम")
सबसे पहले, यह कहता है कि सूचकांक "contacts_search_idx":
< p> त्रुटि: डेटा प्रकार चरित्र अलग अभिगम विधि "जिन" के लिए कोई डिफ़ॉल्ट ऑपरेटर वर्ग है
दूसरे, वहाँ खो रहे हैं gin_trgm_ops
यह कैसे काम करता है?
रेल 4.2
< पी> आप ca ऑपरेटर वर्ग को परिभाषित करने के लिए ऑर्डर परम का उपयोग करें।
add_index "संपर्क", [ "first_name", "last_name", "नाम"], नाम: "contacts_search_idx", का उपयोग करते हुए: जिन, आदेश: {first_name: gin_trgm_ops, last_name: : Gin_trgm_ops, नाम:: gin_trgm_ops}
इस समाधान को यहां मिला:
No comments:
Post a Comment