Скажем, у вас есть две таблицы: контакты и заказы.У одного контакта может быть много заказов, у заказа всегда должен быть контакт, связанный с ним.
Существует два способа добавить заказ:
- Перейдите на вкладку контактов, найдитеконтакт, который вы хотите, а затем перейдите на страницу сведений этого контакта.На странице сведений нажмите «Оформить заказ».Откроется новый заказ с уже связанным с ним контактом - довольно просто.
- Перейдите на вкладку заказов и нажмите «Новый заказ».Откроется новая страница заказа - чтобы связать контакт с этим заказом, у меня есть элемент collection_select, на котором пользователь может выбрать Contacts.all для выбора.
Первый вариант - просто отлично, он работаетв совершенстве.Тем не менее, второй вариант работает нормально, пока вы не получите больше, скажем, 100 контактов.Тогда вы просто не можете найти нужный контакт.
Просто чтобы убедиться, что все понимают проблему, давайте выберем вариант два после нескольких сотен контактов.Допустим, у меня есть 50 000 контактов в моей базе данных.Теперь базовая коллекция collection_select даже не является опцией - это просто не так.
Я ищу элемент управления text_field, который позволит вам ввести имя, и он ищет в базе данных, используя ajax, и выводит список соответствующихконтакты ниже.Когда я выбираю контакт, он связывает этот контакт с заказом.
37signals.com использует подобный элемент управления в своих продуктах.Многие другие веб-компании тоже.Есть ли такой плагин на github.com?Где я могу найти это?Что я должен даже искать?
PS - поскольку я заканчиваю добавлять этот вопрос, я пошел, чтобы добавить 'Tag' к вопросу.Когда я вписываю в это поле, выпадающий список совпадающих записей для меня, чтобы выбрать.Это очень похоже на то, что мне нужно!Есть идеи?
Спасибо за помощь!