我想在我的主页上显示很多东西,所有东西都从数据库中的不同表中拉出,只是想看看做这件事的最佳方法。
通读https://guides.rubyonrails.org/v2.3.11/active_record_querying.html,我能够显示正确的详细信息,但这是最好的方法吗?这种方法会带来性能问题吗?
from itertools import combinations
inp = [18,0,2,20]
length = 2
sum_ = 20
def isSubsetSum(data, length, sum_):
data = [i[0]+i[1] for i in combinations(data,length)]
if sum_ in data:
return True
return False
print(isSubsetSum(inp,length, sum_))
在类似的主题上,迭代和显示数据的最佳方法是什么?这是我想要实现的:
<% about = Page.find(1) %>
<h1 class="title"><%= about.title %></h1>
<% unless about.subtitle.blank? %>
<h2 class="subtitle"><%= about.subtitle %></h2>
<% end %>
<p><%= about.body %></p>
任何提示都非常感谢!
答案 0 :(得分:0)
要实现这一目标
<div class="tabs">
<ul>
<% Chapter.all.each do |c| %>
<li><a><%= c.title %></a></li>
<% end %>
</ul>
</div>
必须要注意以下几点:
第一步
您需要具有一个表示数据的模型或数据集,例如,您可能具有一个以名称和头发颜色作为属性的Person.rb文件。那可以是您的模型,它所要做的就是定义数据集。
class Person < ApplicationRecord
scope :latest_Person, -> { order(date: :desc) }
validates :name, presence: true, length: { minimum: 5 }
validates :haircolor, presence: true
end
第二步
您需要在控制器类中声明或实例化该模型,例如,您可能需要按特定顺序显示人员列表。可以使用scopes
处理。例子
def persons
# Render all persons
@persons_all = Person.latest_Person
end
第三步
从视图中的控制器类中调用已声明的对象。基本上,您要做的只是引用已声明的对象。例子
<% if @persons_all.empty? %>
<h2>No persons available</h2>
<% else %>
<% @persons_all.each do |p| %>
<p><%= p.name %></p>
<p><%= p.haircolor %></p>
<% end %>
<% end %>
标记为答案是否有帮助,谢谢。