我从 Rails 开始,仍在基础知识和实验上
在我看来,有一个包含公司名称的数组;我使用 erb 仅显示 <ul>
的项目。
<% companies = ["a", "b", "c"] %>
<ul class="list-group">
<% companies.each do |item| %>
<li class="list-group-item"><strong><%= item %></strong></li>
<% end %>
</ul>
到目前为止,该页面正在执行我想要的操作(显示公司名称)。鉴于公司数组有点长,我想知道如何执行此操作。有没有更好的方法来处理数组中的信息,而不会使 View 页面困惑?非常感谢。
最佳答案
创建一个名为Company
的模型:
#app/models/company.rb
class Company < ActiveRecord::Base
end
您还需要相应的数据库值:
$ rails g migration CreateCompany
#db/migrate/create_company.rb
class CreateCompany < ActiveRecord::Migration
def change
create_table :companies do |t|
t.string :name
t.timestamps
end
end
end
$ rake db:migrate
--
这将允许您存储Company
记录以及相应的属性(name
是本示例中突出显示的属性):
#config/routes.rb
resources :companies #-> url.com/companies
#app/controllers/companies_controller.rb
class CompaniesController < ApplicationController
def index
@companies = Company.all
end
end
#app/views/companies/index.html.erb
<ul class="list-group">
<% @company.each do |company| %>
<%= company.name %>
<% end %>
</ul>
您可以使用 rails console
创建一些测试 Company
值:
$ rails c
$ names = %w(test1 test2 test3)
$ names.each do |name|
$ - Company.create name: name
$ end
关于ruby-on-rails - Rails <ul> View 中带有数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34538655/