Tag: 数组

Rails无法写入数据库中的序列化数组字段

我在我的模型上设置了数组,当我将数组写入我的记录时,它表示COMMIT为true,但在返回空数组后立即检查该记录上的字段。 模型: class Feature < ActiveRecord::Base serialize :content, Array attr_accessible :content end 移民: class AddContentToFeatures < ActiveRecord::Migration def change add_column :features, :content, :text, array: true, default: [] end end 我尝试过的,以及各种符号和字符串语法,是这样的: > f=Feature.new > f.content_will_change! #i feel like i shouldn’t have to do this > f.content = [‘sadasd’,’asdasd’] > f.save! BEGIN COMMIT => true > f.content […]

Rails 4 – 使用postgres逐个渲染数组值

我使用Postgres作为数据库,并利用Rails 4开箱即用的Postgres数组支持。 我有一个名为Recipe的模型,它包含t.text :steps, array: true数组属性。 我想在由每个值分隔的文本字段中呈现此数组属性。 我已经尝试了以下但是我得到错误undefined method ‘each’ for nil:NilClass 。

如果Record具有Array中的任何ID,则选择所有记录

早安溢出。 我在尝试选择所有具有存储在名为@problem的数组中的ID的处理时@problem 。 这是我的治疗控制器。 @problem = Remedy.find_by_sql([“SELECT id FROM remedies WHERE LOWER(\”remedyName\”) LIKE?”, “%#{params[:searchremedy]}%”.downcase]) query = “SELECT * FROM treatments INNER JOIN remedies_treatments on treatments.id = remedies_treatments.treatment_id WHERE remedies_treatments.treatment_id LIKE ?” @pretreatments = Treatment.find_by_sql([query, @problem]) 这是控制台的错误 ActiveRecord::StatementInvalid (PG::SyntaxError: ERROR: syntax error at or near “,” LINE 1: …d WHERE remedies_treatments.treatment_id LIKE 233,234,224 “LIKE”运算符可能不是我想要做的事情 – 我尝试使用ANY运算符,但也无济于事。 […]

检查Postgres数组中是否存在任何给定值的数组

我正在编写一个Rails 4应用程序,并在我的一个名为identifiers模型上有一个字符串数组列。 当用户传入标识符列表时,获取任何给定标识符与任何存储标识符匹配的行的语法是什么? 我正在尝试where(‘ARRAY[?] == any(identifiers)’, ids) ,但这似乎不起作用。

错误未定义方法`的to_key’:尝试在Active Admin table_for上使用数组数据时的数组(Rails,Postgresql,postgres_ext gem)

我想使用我管理的数据进入一个数组数组,将它们放在我的一个活动管理控制台上的表(table_for)中 我的应用程序是一个每日交易应用程序,旨在了解更多Ruby on Rails。 感谢SO的帮助,我现在设法获得我在Array中需要的所有数据: 在Active Admin仪表板中计算序列化属性(数组)中值的出现次数(Rails,Active admin 1.0,Postgresql数据库,postgres_ext gem) 我想要使​​用的数组数据看起来像(它实际上是一个数组数组) 但我想要的是看起来像下面的图像,所以我想使用Active Admin的table_for(稍后具有所有导出function): 我的仪表板页面上的当前代码是 columns do column do data = Deal.connection.select_rows( %q{ with expanded_deals(id, goal) as ( select id, unnest(deal_main_goal) from deals) select goal, count(*) n from expanded_deals group by goal order by goal; }).each do |row| goal = row.first n = row.last.to_i #…. end […]

渲染json的数组问题

我有这个数组来自我的服务器。 当我使用puts时返回的是这样的: formatted_total_price £66.00 formatted_total_price £128.00 formatted_total_price £246.00 formatted_total_price £243.20 formatted_total_price £242.86 formatted_total_price £242.50 所以我试着这样做: price1.each do |price11| price11.json {render json: price11.as_json} end 但是,这会返回此错误: NoMethodError (undefined method `json’ for [“formatted_total_price”, “£66.00”]:Array): 我想要的是将formatted_total_price和£66.00匹配起来如下所示: “formatted_total_price”:”£66.00″ 这是我拥有的实际代码: doc.xpath(“//script[@type=’text/javascript’]/text()”).each do |text| if text.content =~ /more_options_on_polling/ price1 = text.to_s.scan(/\”(formatted_total_price)\”:\”(.+?)\”/).uniq description = text.to_s.scan(/\”(ticket_desc)\”:\”(.+?)\”/).uniq price = price1 + description price1.each do |price11| […]

为什么这个rails视图在.each do循环结束时吐出一个原始数组?

我在Rails视图中被这个奇怪的输出所困扰。 这是我的模型: class Comment < ActiveRecord::Base belongs_to :post end 这是我观点的相关部分。 我已经将问题分离到这个代码块,特别是在最后一次迭代之后和循环结束之前发生的任何事情 。 如果我注释掉每次迭代中打印的实际文本,原始数组仍然会打印出来。 Comments Commenter: 这是奇怪的输出(带样本注释。): 评论者:迈克尔 好post。 评论者:迈克尔 好post。 评论者:迈克尔 测试。 评论者:约翰 arrays还在打印吗? [#, #, #, #] 最后,这是开发日志的阅读方式。 他们都看起来像这样。 Started GET “/posts/1” for 127.0.0.1 at 2011-01-11 22:01:52 -0600 Processing by PostsController#show as HTML Parameters: {“id”=>”1”} [1m[36mPost Load (0.1ms)[0m [1mSELECT “posts”.* FROM “posts” WHERE (“posts”.”id” […]

查询Rails中的Postgres JSON数组字段

我试图在Postgres数据库中查询某个值。 我在users表中有一个名为groups的字段,可以用以下任一方式表示: 1。 groups: {“data”=>[{“serie”=>5, “year”=>3, “specialization”=>”Matematica”, “management_id”=>1, “group_number”=>2}, {“serie”=>5, “year”=>3, “specialization”=>”Matematica”, “management_id”=>1, “group_number”=>2}]} 2。 groups: [{“serie”=>5, “year”=>3, “specialization”=>”Matematica”, “management_id”=>1, “group_number”=>2}, {“serie”=>5, “year”=>3, “specialization”=>”Matematica”, “management_id”=>1, “group_number”=>2}] 我对这两种陈述都很好。 但是,我似乎无法找到如何让所有使用serie 5的用户说出来。 我尝试了多个查询: @users = User.where(“groups ->> ‘data’ @> ?”, {serie: 5}) @users = User.where(“groups -> ‘data’ @> ‘?'”, {serie: 5}) @users = User.where(“groups ->> ‘data’ ->> ‘serie’ […]

Ruby中的数组:Take vs Limit vs First

假设您在Rails @objects有一个对象数组 如果我想显示前5个对象,使用时有什么区别: @objects.limit(5) @objects.take(5) @objects.first(5) 我说的是前端(Ruby),而不是SQL 。 对象不受SQL限制的原因是因为可以在别处使用相同的数组而不对其应用限制。 它与对象实例化有什么关系吗?

我可以使用Rails在hstore中存储数组

我想保存这样的数据: User.create(name:”Guy”, properties:{url:[“url1″,”url2″,”url3″], street_address:”asdf”}) 我可以在Rails 4中这样做吗? 到目前为止,我尝试过迁移: add_column :users, :properties, :hstore, array: true 但是当我在hstore中保存数组时,它返回错误: PG::InvalidTextRepresentation: ERROR: array value must start with “{” or dimension information