查看 table 中是否有记录,甚至被删除
Find out if table has ever had records in it, even deleted
如果 notes 列记录之前没有任何条目,我想为用户显示一个视图。即最适合初次使用的用户。
如果用户在创建笔记后将其删除(即即使有 0 个条目),我希望它显示与 table 中有记录相同的内容。
为此我不能简单地用
这样的计数来做
@notes_list = current_user.notes
并且在视图中
<% if @notes_list.count == 0 %>
<%# view 1 %>
<% else %>
<%# view 2 %>
<% end %>
所以你能帮我解决这个问题吗?还有比 if 检查更好的方法吗?
您可以将新列添加到名为 note_created
的 user
模型中,作为具有默认 false 值的 布尔值 。每当新用户创建时,此字段将保持 false
。但是,如果用户创建任何 post ,您将在其余时间将其设置为真。如果用户删除了他的所有笔记,该字段将保持为真。您可以根据该领域交换意见。
这可能是一个蹩脚的解决方案。但是我现在没有更好的解决方案。 :D
def create
@new_note = Note.new(notes_params)
if @new_note.save
unless @new_note.user.note_created
@new_note.user.note_created = true
@new_note.user.save
end
// rest of the code
end
end
我不知道如何在一行中完成,但是这个怎么样:
添加一个切换变量,默认为 false。
在您的方法 def create note 中,将 var 设置为 true。
Destroy 不会触及这个 var。
使用切换变量为视图创建 if 语句。
如果 notes 列记录之前没有任何条目,我想为用户显示一个视图。即最适合初次使用的用户。
如果用户在创建笔记后将其删除(即即使有 0 个条目),我希望它显示与 table 中有记录相同的内容。
为此我不能简单地用
这样的计数来做@notes_list = current_user.notes
并且在视图中
<% if @notes_list.count == 0 %>
<%# view 1 %>
<% else %>
<%# view 2 %>
<% end %>
所以你能帮我解决这个问题吗?还有比 if 检查更好的方法吗?
您可以将新列添加到名为 note_created
的 user
模型中,作为具有默认 false 值的 布尔值 。每当新用户创建时,此字段将保持 false
。但是,如果用户创建任何 post ,您将在其余时间将其设置为真。如果用户删除了他的所有笔记,该字段将保持为真。您可以根据该领域交换意见。
这可能是一个蹩脚的解决方案。但是我现在没有更好的解决方案。 :D
def create
@new_note = Note.new(notes_params)
if @new_note.save
unless @new_note.user.note_created
@new_note.user.note_created = true
@new_note.user.save
end
// rest of the code
end
end
我不知道如何在一行中完成,但是这个怎么样: 添加一个切换变量,默认为 false。 在您的方法 def create note 中,将 var 设置为 true。 Destroy 不会触及这个 var。 使用切换变量为视图创建 if 语句。