小编KJF*_*KJF的帖子

查找超过定义数量的评论的所有帖子

我有一个简单的rails 3博客应用程序,其中帖子有很多评论和评论属于一个帖子.

我想创建一个范围来获取所有超过5条评论的帖子.没有计数器缓存列的最佳方法是什么?

activerecord ruby-on-rails

5
推荐指数
2
解决办法
2639
查看次数

Rails 3和fields_for与activemodel(无表格)对象

我有一个无表格模型,我正在尝试生成一些表单字段.

表单看起来像这样:

= form_for :users, url: users_path do |f|
  - books.each do |book|
    = f.fields_for :books, book do |bf|
      = bf.hidden_field :title, value: book.title
  = f.submit "Send"
Run Code Online (Sandbox Code Playgroud)

我期望为每个字段生成的内容是这样的:

<input name="users[books][][title]" type="hidden" value="Some Book Title">
<input name="users[books][][title]" type="hidden" value="Some Book Title">
<input name="users[books][][title]" type="hidden" value="Some Book Title">
Run Code Online (Sandbox Code Playgroud)

但是,我实际得到的是

<input name="users[books][title]" type="hidden" value="Some Book Title">
<input name="users[books][title]" type="hidden" value="Some Book Title">
<input name="users[books][title]" type="hidden" value="Some Book Title">
Run Code Online (Sandbox Code Playgroud)

这意味着当提交表单时,只有最后一个输入字段可用,因为前两个字段已被覆盖,因为它们引用相同的内容.

当模型具有活动记录后端但不是无表格时,这可以正常工作.

有什么建议?

forms ruby-on-rails ruby-on-rails-3

5
推荐指数
1
解决办法
1207
查看次数

查找在一周中的特定一天创建的所有记录

我需要查找在一周中的特定一天创建的所有记录。我只能使用标准模型日期时间时间戳。我将如何在 activerecord 中执行此操作?

activerecord ruby-on-rails

4
推荐指数
1
解决办法
2275
查看次数

干掉路由中的rails名称空间

我有几个看起来相同的命名空间,两者之间的唯一区别是名称.所以我有

namespace :narrow do
  resources :posts
  resources :comments
  ...
  ...
end

namespace :wide do
  resources :posts
  resources :comments
  ...
  ...
end
Run Code Online (Sandbox Code Playgroud)

我想要做的是在每个命名空间中定义相同的资源,而无需在添加/删除/更改资源时在两个位置进行更改.

有没有办法做到这一点?

routing namespaces ruby-on-rails ruby-on-rails-3

4
推荐指数
1
解决办法
175
查看次数

基于预定义列表的Ruby排序

我有一个数组objects.每个对象都有一个我们称之为的属性display_name.

我想根据预定义的值列表对此数组进行排序.

因此,如果预定义列表看起来像这样 ["Ball", "Cat", "Helicopter", "France"]

然后,display_name属性匹配的对象"Ball"位于列表的头部,列表中具有"Cat"第二个的对象,依此类推.

ruby sorting

4
推荐指数
1
解决办法
631
查看次数

在C/C++中列出项目的最有效方法

我有100个未分类商品的清单.每个项目属于一个组.该项所属的组只是项类的成员.

使用C/C++我正在寻找最有效的扫描项目列表的方法,检查它们所在的组并将项目打印到屏幕上.这是抓住了.将组中的项目打印到屏幕后,我不想再打印属于该组的项目.

我正在使用pre STL编译器,并且可执行文件的大小很关键,因此我不想开始定义自己的Hash类.

c c++

3
推荐指数
1
解决办法
982
查看次数

为具有类似数据类型的两个模型烘干代码

让我们说我有一个葡萄酒和啤酒模型/控制器以及wine_review和beer_review模型,有很多关系.

每个表都有几乎相同的数据类型,例如wine_review和beer_review都有一个评级和注释列.葡萄酒和啤酒各有名.

如何干掉我的代码,以便他们可以共享相同的视图.

现在我有两种观点做同样的事情,一次是啤酒,一次是葡萄酒.

<% @wine_reviews.each do |review| -%>
  <ul>
    <li><%= link_to review.wine.name, review.wine %></li>
    <li><%= review.rating %></li>
    <li><%=h review.comment %></li>
  </ul>
<% end -%>

<% @beer_reviews.each do |review| -%>
  <ul>
  ....
  ....
Run Code Online (Sandbox Code Playgroud)

我真正想做的是像

<li><%= link_to review.beverage.name, review.beverage %></li>
Run Code Online (Sandbox Code Playgroud)

根据我当时的渲染情况,饮料会被葡萄酒或啤酒取代,但我无法弄清楚如何做到这一点.

我不能将饮料作为一个局部传递给部分,因为review.beverge会破坏.

谢谢.

ruby ruby-on-rails

1
推荐指数
1
解决办法
558
查看次数

has_one关联的未知列错误并在命名作用域中加入

我有一个产品和payment_notification模型与以下关联

class Product < ActiveRecord::Base
  has_one :payment_notification
end

class PaymentNotification < ActiveRecord::Base
  belongs_to :product
end
Run Code Online (Sandbox Code Playgroud)

我正在设置一个命名范围,该范围应该获取其关联的payment_notification已完成状态的所有产品.

我觉得这应该适用于我的产品型号:

scope :completed, joins(:payment_notification).where(:payment_notification => { :status => 'Completed' })
Run Code Online (Sandbox Code Playgroud)

但是这会导致以下错误:

Error: Mysql::Error: Unknown column 'payment_notification.status' in 'where clause': SELECT     `products`.* FROM       `items`  INNER JOIN `payment_notifications` ON `payment_notifications`.`product_id` = `productss`.`id` WHERE     (`payment_notification`.`status` = 'Completed')
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

activerecord ruby-on-rails

1
推荐指数
1
解决办法
1931
查看次数

在c中将作为字符串给出的版本号解析为4个不同的整数

我有一个版本号作为字符串返回,看起来像"6.4.12.9",四个数字,每个数字用"."分隔.

我想要做的是将字符串解析为4个不同的整数.给我

int1 = 6
int2 = 4
int3 = 12
int4 = 9
Run Code Online (Sandbox Code Playgroud)

我通常会使用正则表达式,但使用C时我无法使用该选项.

c parsing

1
推荐指数
1
解决办法
1596
查看次数

如何将iOS元素组合在一起,以便它们可以作为单个元素进行操作

我的iOS应用程序中有3个UI元素,我想在动画时将其视为单个实体.

UIImageView顶部有UILabelView和UIActivityIndi​​catorView.有没有办法将这些东西组合在一起并为组织设置动画而不必独立地为每个组织制作动画?

cocoa core-animation objective-c ios

1
推荐指数
1
解决办法
1258
查看次数

ActiveRecord 查询以查找过去 3 个月内未购买的所有用户

我有一个具有关联购物车的用户模型。每个购物车都有一个 purchase_at 日期时间列。我想选择过去 3 个月内没有购买过购物车的所有用户。

我虽然简单:

User.joins(:carts).where('not carts.purchased_at < ?', 3.months.ago)
Run Code Online (Sandbox Code Playgroud)

可以解决问题,但情况似乎并非如此。我正在返回过去 3 个月内购买过东西的用户记录。

有什么想法吗?

activerecord ruby-on-rails arel ruby-on-rails-3

1
推荐指数
1
解决办法
624
查看次数