Как отобразить шаблон для пустых таблиц? - PullRequest
0 голосов
/ 18 марта 2012

У меня есть следующая модель

class User < ActiveRecord::Base
  has_many :collabos
  has_many :files
end

Я хочу отобразить условную часть, чтобы current_user мог создать коллаб или файл, когда эти модели пусты?

Вот моя первая попытка, но она не работает.

<% if current_user.files.empty? || current_user.collabos.empty? %>
  <%= "create a file/collabo" %>
<% else %>
   <%= yield %>
<% end %>

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

Я думаю, что рисунок ниже лучше показать вам, какое поведение я хочу реализовать

1 Ответ

1 голос
/ 18 марта 2012

Вам нужно и вместо или :

<% if current_user.files.empty? and current_user.collabos.empty? %>

Однако всегда неплохо создавать такие экземпляры User, как:

def has_files?
  files.empty? ? false : true
end

, чтобы он стал:

<% if current_user.has_files? and current_user.has_collabos? %>

(и вы всегда можете создать метод has_files_and_collabos, если это код многократного использования)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...