Ошибка после попытки link_to partials - PullRequest
1 голос
/ 26 августа 2011

Используя этот предыдущий вопрос в качестве руководства, я попытался создать заголовок ul над контейнером, который отображает частичные элементы внутри контейнера при нажатии. (Надеюсь, в этом есть какой-то смысл, но это может быть и не важно.) До тех пор, пока ссылки на частичные файлы не будут нажаты, у меня по умолчанию отображается частичное отображение.

Однако, когда я щелкнул по своему link_to в надежде отобразить частичное, я получил следующую ошибку:

uninitialized constant ProfileController

Я использую Rails 3. Вот мой соответствующий код:

ProfilesController:

def show_about
  @is_on_show_about = true
end

def show_info
  @is_on_show_info = true
end

Вид / профили / show.html.erb:

<div id="info">
  <div id="infoContainer">
    <% if @is_on_show_about %>
      <%= render :partial => 'show_about' %>
    <% elsif @is_on_show_info %>
      <%= render :partial => 'show_info' %>
    <% end %>
    <ul id="info">
      <li>
        <%= link_to 'About', show_about_path, :remote => true %>
      </li>
    </ul>
    <ul id="settingsLinks">
      <li><a href="#">Advice</a></li>
      <li>
        <%= link_to 'Info', show_info_path, :remote => true %>
      </li>
    </ul>
  </div>
  <%= render :partial => 'show_about' %>

routes.rb:

map.show_info 'profiles/:id/info', :controller => 'profile', :action => 'show_info'
map.show_about 'profiles/:id/about', :controller => 'profile', :action => 'show_about'

Может кто-нибудь помочь мне исправить это и объяснить, что пошло не так?

1 Ответ

2 голосов
/ 26 августа 2011

Оба ваших маршрута неверны.

Если ваш контроллер действительно называется ProfilesController (во множественном числе), тогда ваши маршруты должны использовать :controller => 'profiles' вместо :controller => 'profile'.

...