2015-07-15 2 views
0

Я новичок в рубине на рельсах. У меня есть модель плат и его взгляды. У меня есть модель категории и ее взгляды. Связь между категорией и доской - одна из многих, т. Е. Одна категория имеет много досок. Мое требование - получить доступ к идентификатору категории, размещенному в таблице таблиц, и показать соответствующие названия категорий для этого идентификатора определенной категории. В теге метки <label for="home"><%= board.category_id %></label> я получаю пустой идентификатор категории в теге ярлыка или может быть пустым. На консоли rails это дает мне данные правильно.
Это код для просмотра.Как получить доступ к несвязанным атрибутам в рубиновых представлениях

<div class="myNavigation"> 
 
    <nav class="vertical"> 
 
    <ul> 
 
     <% boards.each(function (board) { %> 
 
     <li> 
 
      <label for="home"><%= board.category_id %></label> 
 
      <input type="radio" checked="true" name="verticalMenu" id="home" /> 
 
      <div> 
 
      
 
      </div> 
 
     </li> 
 
     <% }); %> 
 
    </ul> 
 
    </nav> 
 
    </div>

Совет Модель Класс:

class Board < ActiveRecord::Base 
    attr_accessible :description, :name, :open, :members, :category_id 
    #attr_accessor :category_id 
    has_many :lists, dependent: :destroy 
    has_many :board_activities , dependent: :destroy 
    has_many :boards_members, class_name: "BoardMember" , dependent: :destroy 
    has_many :members, through: :boards_members , dependent: :destroy 
    belongs_to :category, class_name: "category" 

end 

Категория Модель класса

class Category < ActiveRecord::Base 
    attr_accessible :title, :description 
    #attr_accessor :category_id 
    has_many :boards, dependent: :destroy 
end 

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

В качестве побочного примечания я работаю в магистральных рельсах, на самом деле это шаблон досок. Я работаю с версией ruby ​​2.2.1 и версией 4.1.2 rails. Также можно предоставить дополнительную информацию. Заранее спасибо.

ответ

0

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

<% boards.each do |board| %> 
    <li> 
    <label for="home"><%= board.category_id %></label> 
    <input type="radio" checked="true" name="verticalMenu" id="home" /> 
    <div> 

    </div> 
    </li> 
<% end %> 

Похоже, что код, который вы должны только декларирует анонимные функции внутри цикла, я не уверен, - но я думаю, это то, что вы хотите :)

+0

Прошу прощения, он сбивает мой передний конец. Ничего не отображается с помощью этого цикла. Я упомянул, что использую это в базовом шаблоне. – EM923

+0

О, моя ошибка, я не видел твоей заметки, я думал, что это простой файл просмотра рельсов - я не очень хорошо знаком с позвоночником, не могу тебе помочь –

0

вы должны использовать <%= board.category.title %> вместо <%= board.category_id %>

Если вы действительно может иметь нулевой cATEGORY_ID, вы могли бы сделать это:

<%= board.category.title if board.category_id %> 
+0

Прошу прощения, это тоже не работает, делай вам нужно больше объяснений сэр? – EM923

+0

На самом деле моя проблема связана с этим вопросом: http://stackoverflow.com/questions/17386090/cannot-access-all-backbone-model-attribues-from-template Я не понимаю, как это сделать! Можете ли вы мне помочь ! – EM923

+0

Да, это потенциальная проблема при передаче вашей модели в режим позвоночника. Чтобы отлаживать, вам нужно будет увидеть гораздо больше вашего шаблона, маршрутизатора и т. Д. (где вы вызываете fetch, render и т. д.) вы получаете какие-либо ошибки? – MattMcKnight

Смежные вопросы