2016-11-29 6 views
3

Я использую ActiveAdmin ruby gem, который использует formtastic.Как изменить URL-адрес формы с помощью маркера ActiveAdmin Ruby?

У меня есть форма, как показано ниже:

ActiveAdmin.register User do 
    permit_params :first_name, :last_name, :age 

    form do |f| 
     input :first_name 
     input :last_name 
     input :age 
     actions 
    end 
end 

Я хочу, чтобы изменить форму URL в пользовательский URL, который включает в себя идентификатор пользователя (например, 7). Что-то вроде:

ActiveAdmin.register User do 
    permit_params :first_name, :last_name, :age 

    form url: "/api/customer/7/attempt", method: :post do |f| 
     input :first_name 
     input :last_name 
     input :age 
     actions 
    end 
end 

Вышеуказанные работы (т. Е. Изменен формат страницы). Тем не менее, я жестко кодирую идентификатор пользователя 7 в URL. Мне нужно сделать переменную интерполяцию. Но я не уверен, что у меня есть доступ к объекту пользователя за пределами блока.

У меня есть доступ к объекту пользователя в пределах блока, как

f.object.id 

Но не за пределами этого блока.

Как решить эту проблему?

спасибо.

ответ

0

resource.id должен работать в вашем случае

+0

Это не работает. –

0

я не знаю, если это возможно, я пытался подходы, как

resource.id 
user.id 
params[:id] 

и они не работали.

Чтобы решить эту проблему, вы можете создать пользовательскую форму

form partial: 'form' 

и указать URL там.