自己试出来了 先把值取出来,组合成新的 hash,再保存
hash = record['data']
hash['bar'] = {name: 'bar'}
record.set(data: hash)
Mint 18.1 cinnamon 物理机
把业务拆了 谢谢楼上大家
#2 楼 @alucardpj 还真有这样的,学习了
@fsword 我以为 ROR 中使用?来就相当于 JAVA 中的参数化查询,应该可以避免 SQL 注入了,是我理解错了么?我试了几个常用的注入的字符,没什么问题 我这是个小系统,用的人不过 10 来个人,这个表数据不会超过 1000 条,所以甚至连数据库都用的是 SQLITE
@chucai 用 join 写多个条件果然好用,谢谢。不过,有个疑问如下
page = params[:p] || 1
conditions = []
#这样子直接写在String里面,不会有注入危险么?还是ROR有特殊处理的?
conditions << "name LIKE %#{params[:name][0,20]}%" if params[:name].present?
conditions << "serial LIKE %#{serial}%" if params[:serial].present?
# 最后在使用conditions
conditions.join(" AND ")
@leomao10 谢谢,了解了
@darkbaby123 看了 API,现在我这是样写的
Book.find(:all, :include => :master)
谢谢几位的回答,看了 Robin 的文章,受益良多
不过@darkbaby123 说的方法,我试了下,并不能成立,报错说“include”是私有方法,是我的 Rails 版本问题?
Ruby 1.9.3 Rails 3.2.12
看过,本来以为自己弄清楚了,一试,又糊涂了
@ywjno 无论是 json.encode(bar).to_s 还是 json.encode(bar.to_s) 都一样 刚下好了 linux,装上看看
@tech_blogbin 真的是百思不得其解,或许真的是 adapter 的关系吧,明天找台 LINUX 来试试看
@tech_blogbin 是的,数据是从 MYSQL 提取的,adapter 因为是 WINDOWS,所以暂时也只能用 mysql 了,都设置成了 utf8,取出来的数据,也是正常的,如图
@tech_blogbin 谢谢给我这么详细的解释,但是我现在的问题并非是看到 unicode 码而感觉是乱码,而是它给出的 unicode 码确实是乱码,比如我上面的“系统配置”四个中文字,render :json 后给出的 unicode 码是"\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd",这明显是不对的
有事出去了两天…… 谢谢 sleepless,不过这个并不能解决问题,事实上我一开始就觉得应该是编码方面的问题,所以每一个文件都给加上了指定编码的#encoding : UTF-8 麻烦大家再帮我看看,我自己也再研究一下看