Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails ActiveRecord中第一个和第二个的可选语法是什么 _Ruby On Rails_Ruby_Activerecord - Fatal编程技术网

Ruby on rails ActiveRecord中第一个和第二个的可选语法是什么

Ruby on rails ActiveRecord中第一个和第二个的可选语法是什么 ,ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,我有几个像这样的div,但在上面的例子中,我是这样硬编码的carictureType.first.name。但是我想在for循环中完成它,如果有一种语法,我可以用它来做类似于carictureType[0]的事情。假设您希望迭代所有carictureType记录。那你喜欢吗 <div class="col-md-12 col-sm-12 pad-0 col-hover"> <div class="col-md-2 col-sm-2 pad-10 ">

我有几个像这样的div,但在上面的例子中,我是这样硬编码的carictureType.first.name。但是我想在for循环中完成它,如果有一种语法,我可以用它来做类似于
carictureType[0]的事情。假设您希望迭代所有
carictureType
记录。那你喜欢吗

<div class="col-md-12 col-sm-12 pad-0 col-hover">
    <div class="col-md-2 col-sm-2 pad-10 ">
        <img class="img1"  src="/assets/choose-style/img1.png">
    </div>
    <div class="col-md-8 col-sm-8">
        <h5><%= CaricatureType.first.name %></h5>
        <p class="text-color">
            <%= CaricatureType.first.description %>
        </p>
    </div>
    <div class="col-md-2 col-sm-2 roundedTwo">
        <input type="radio" value="None" id="roundedTwo" name="check" />
        <label for="roundedTwo"></label>
    </div>
</div>

或者,如果您想要前10条记录,则:

<% CaricatureType.all.each do |caricature_type| %>
  <div class="col-md-8 col-sm-8">
     <h5><%= caricature_type.name %></h5>
     <p class="text-color">
       <%= caricature_type.description %>
     </p>
  </div>
<% end %>

注意:是的,不在视图中放置任何模型查询是可以接受的。将它们保留在渲染当前视图/局部的控制器的相应操作中,然后在视图中使用这些实例变量。我只是想在这个答案中告诉你,你所面临的问题的解决方法是什么。因此,您将把查询结果存储在控制器操作中的
@carpicture\u types
中,然后使用它进行迭代

<% CaricatureType.first(10).each do |caricature_type| %>
如果数值为2,它将返回前2条记录

client = Client.first(numerical value)
client=client.first(2)
=> [ , ]

不要在视图中编写业务逻辑,而是可以使用实例变量

@caricature_type = CaricatureType.all
在控制器中:

client = Client.first(2)
=> [ <Client id: 1, first_name: "Lifo">, <Client id: 2, first_name: "Fifo">]
然后在您的视图中,您可以使用这个实例变量

@caricature_type = CaricatureType.all


Hey在第一个示例中,您不是只得到循环中的第一条记录吗?您的意思是说块变量必须像漫画一样\u type.name?而不是漫画式的。名字?盖茨谢谢你。我有点问题,所以注意力不集中。