У меня второе приложение с Rails, и я хочу, чтобы Ajax работал.Я также использую вкладки из начальной загрузки 2. Я обнаружил две версии вкладок для начальной загрузки, одна из которых предоставляет вам вкладки, и вы можете поместить содержимое этих вкладок в DIV, а другая - в основном каждая вкладка, на которую вы способны.использовать ссылку.Я выбрал последнее, чтобы я мог Ajaxify ссылки.Основная идея заключается в том, что домашняя страница моих приложений имеет вкладки в верхней части, такие как: Главная, Инвентарь, Задачи и т. Д., И когда вы нажимаете на вкладку, вы попадаете на страницу индекса каждого из этих контроллеров.У меня это работает прекрасно, пока я не попытаюсь использовать ajax для загрузки действия индекса для каждого контроллера / вкладки.Поэтому я буду использовать только вкладку / контроллер Home в качестве примера:
Home Controller
class HomeController < ApplicationController
def index
@data = "Home Screen Index Page"
respond_to do |format|
format.html
format.js
end
end
end
Вот ссылка на мой взгляд (app / views / layouts / application.html.erb):
link_to "Home", home_path(:format => :js), :remote => true
Я также только что попробовал:
link_to "Home", home_path, :remote => true
На данный момент мое действие с индексом простое (/app/views/home/index.html.erb):
<%= @data %>
Я создал файл home.js.erb, который был в основном просто предупреждением, потому что он никогда не выполнялся (я переименовал и даже удалил файл без изменений в консольных сообщениях), и как только предупреждение фактически сработалодля меня я могу сосредоточиться на коде jquery: у меня было следующее:
$("<%= escape_javascript render(:file => 'home/index.html.erb') %>").insertAfter('.showindex');
При просмотре консоли, когда я нажимаю на ссылку с вкладкой, я вижу следующее:
Started GET "/home.js" for 127.0.0.1 at 2012-03-19 18:15:21 -0700
Processing by HomeController#index as JS
Rendered home/index.html.haml within layouts/application (0.1ms)
Completed 200 OK in 8ms (Views: 7.4ms | ActiveRecord: 0.0ms)
если я удалю (: format =>: js) из ссылки, консольное сообщение в основном слегка изменится на следующее:
Started GET "/home" for 127.0.0.1 at 2012-03-19 18:16:59 -0700
Processing by HomeController#index as JS
Rendered home/index.html.haml within layouts/application (0.1ms)
Completed 200 OK in 7ms (Views: 7.2ms | ActiveRecord: 0.0ms)
Глядя на консольное сообщение, в моей голове это должно работатьно это не так.Ничего не отображается, и фактически функция TAB для вкладки Home в начальной загрузке больше не работает.
Поскольку последние пару дней я пустовал, и, кажется, это не должно быть таким трудным, я уверен, что совершаю ошибку новичка.Если кто-то может помочь, я буду очень признателен.
Спасибо!