ajax get request for js (js.erb в rails) - проблемы с URL / именами - PullRequest
0 голосов
/ 04 марта 2011

в моем профиле / index.html.haml, у меня есть

:javascript
  $(document).ready(function(){
    $('#clickablething').click(function() {
      $.get('/profile', {**passed in json data**}, null, 'script');
    })
  });

, который вызывает мой index.js.erb, когда происходит событие click.Однако мне интересно, как я могу переименовать файл .js.erb.Только /profile (или ./profile, или profile) работает специально для вызова index.js.erb.Если я переименую файл profile.js.erb, он не будет работать (я попытался установить url на profile.js, profile.js.erb, profile/profile.js и другие варианты, но это все недопустимые запросы, как показывает firebug.

В основном я хотел бы назвать index.js.erb profile.js.erb или что-то еще, и мне интересно, как сослаться на это в моем get звонке.

Спасибо !!

edit: Это действительно важно для меня сейчас, так как у меня есть 2+ js.erb-файла, которые я хотел бы вызывать через ajax GET, когда происходят разные события, поэтому я не могу просто придерживаться одного index.js.erb. Как мне это сделать?это? Что за вызов ajax для onescript.js.erb и anotherscript.js.erb?

Ответы [ 3 ]

0 голосов
/ 04 марта 2011

Был ли у вас правильный маршрут для /profile/profile.js?

resources :profiles
  get :profile
end

После этого вы можете попробовать еще раз.

0 голосов
/ 23 марта 2011

Я решил поместить все в index.js.erb и запускать только те разделы, которые мне нужны, условно ...

0 голосов
/ 04 марта 2011

Действие index по умолчанию отрисовывается index.html.haml или index.js.erb, но вы можете указать, что нужно отрендерить profile.js.erb, если вы этого хотите ...

Ваше действие get не имеет ничего общего с файловыми рельсами. Измените свой контроллер на что-то вроде этого:

def index
    respond_to do |format|
        format.js { render 'profile/profile' }
    end    
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...