Ruby on rails Rails 3:创建二维散列并从循环中添加值
我有两种型号:Ruby on rails Rails 3:创建二维散列并从循环中添加值,ruby-on-rails,ruby,arrays,ruby-on-rails-3,hash,Ruby On Rails,Ruby,Arrays,Ruby On Rails 3,Hash,我有两种型号: class Project < ActiveRecord::Base has_many :ticket attr_accessible .... end class Ticket < ActiveRecord::Base belongs_to :project attr_accessible done_date, description, .... end 我不知道我的方法是否正确(可能使用.map而不是where查询),但如何通过检查索引是否已经
class Project < ActiveRecord::Base
has_many :ticket
attr_accessible ....
end
class Ticket < ActiveRecord::Base
belongs_to :project
attr_accessible done_date, description, ....
end
我不知道我的方法是否正确(可能使用.map而不是where查询),但如何通过检查索引是否已经存在来完成并将值放入哈希中
Thanx:)我以前也需要做同样的工作,下面的解决方案并不完美,但应该可以做到:
Ticket.where(:project_id => params[:id]).where("done_date IS NOT NULL").group_by {|t| t.done_date}.map {|k,v| [k => v.map {|vv| vv.value}] }.flatten.first
这不是有效的散列。请尝试
@tickets.all.group_by{t|t.done_date}
Thanx我不需要。展平。首先,它会工作!Thanx很多:)
Ticket.where(:project_id => params[:id]).where("done_date IS NOT NULL").group_by {|t| t.done_date}.map {|k,v| [k => v.map {|vv| vv.value}] }.flatten.first