Названные маршруты не используются в определенных условиях? - AbstractController :: ActionNotFound - PullRequest
2 голосов
/ 07 октября 2011

У меня есть форма, которая использует автозаполнение jQuery для возврата списка имен клиентов.Для функции автозаполнения в качестве источника задан именованный маршрут.

            $( "#clientfinder" ).autocomplete({
                source: 'findclients',
                minLength: 3,
                delay: 600,
                select: function(event,ui){
                      $('#clientfinder_id').val(ui.item.id)
                        }
                });

            -- routes

            match 'findclients' => 'contact#find_clients'

Источник автозаполнения, использующий маршрут, работает нормально, если поле формы используется для обновления записи, но не для создания новой записи.,Представления создания и обновления используют один и тот же частичный _form.html.erb и, следовательно, одно и то же поле с одинаковым идентификатором.Но когда форма используется для создания записи, я получаю:

Started GET "/ search_log / findclients? Term = fid" для 127.0.0.1 в 2011-10-07 11:45:59 -0500 AbstractController:: ActionNotFound (Не удалось найти действие 'findclients' для SearchLogController):

После создания записи и использования формы для обновления записи я получаю:

Started GET "/ findclients? term = fid "для 127.0.0.1 в 2011-10-07 11:46:56 -0500 Обработка ContactController # find_clients as JSON

Это похоже на использование частичной формы для созданиямаршрут игнорируется и вызывается текущий контроллер.Но если форма используется для обновления записи, используется именованный маршрут.Я не вижу, как фреймворк рельсов знает разницу.

Я что-то здесь упускаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...