Я написал ненавязчивое, чистое решение jQuery для этой проблемы (автозаполнение для ассоциаций принадлежащих_).Вам не нужно делать ничего особенного в отношении Formtastic.Просто сгенерируйте обычное поле ввода для своего внешнего ключа и добавьте атрибут, указывающий URL автозаполнения, и другой атрибут, указывающий текущее отображаемое значение модели, на которую ссылаются (в вашем случае название бренда существующего продукта).Использование шаблонной нотации HAML (ERB почти такой же):
= semantic_form_for @product do |f|
= f.inputs do
-# Other input fields ...
= f.input :brand_id,
:input_html => {:'data-autocomplete-url' => auto_complete_brands_path,
:'data-autocomplete-value' => @product.brand.try(:name)}
:javascript
$(function() {
$('#product_brand_id').autocompleteAssociation();
});
Здесь используется виджет автозаполнения jQuery, который я написал специально для таких случаев сопоставления моделей.Это можно найти здесь, вместе с дополнительной документацией: https://gist.github.com/3842296