我认为 json 生成属于 view 层,简单的对象序列化可以用 as_json 完成,复杂的 json 生成应该写到 view。能利用 Rails 现有的 helper 是好事而不是坏事,不然就要一个个搬运,单 cache 就有 cache_digests,russian-doll caching……
为了封装这个方法凭空多了多少代码。
def as_json(options = nil)
hash = serializable_hash(options)
include_meta(hash) unless self.class == FlattenJson
hash
end
入门教程一两本就够了,接着需要是做应用,知识不够了再针对性看。
pg
自荐,我想分享 Asciidoctor,一个文档处理工具。
#4 楼 @PlayMonkey 现在 gemspec 里面可以声明系统依赖 http://guides.rubygems.org/specification-reference/#requirements
不过好像只是提醒一下。
提醒一下,我不熟悉 Grape,不知道是否过滤了 requires 以外的参数?如果不过滤会是个漏洞。
1.9.1 是 ubuntu 预装的,ubuntu 官方源跟 ruby 有关的库都依赖内置的版本,不用动它。用 rvm 开发项目跟系统内置的 ruby 不干扰。
http://guides.rubygems.org/gems-with-extensions/
我见过的最常见问题是没装编译工具,除了安装编译工具也没别的办法了。
Nokogiri 为了方便处理依赖把 c 库和 java 库源码打包到 gem 里。
用的是什么源?(要用原版)
主要用户在国外就放国外云储存啊。
#19 楼 @seaify 这种标记语言对空格和空行都是很敏感的,我打开你的源码看到 block 和 block 粘在一起就感觉不好了。
原生 makrdown 已经定义了多行 list 的写法,包括多行和带代码的情况,读一读 http://daringfireball.net/projects/markdown/syntax#list
不过原生 markdown 没有三 ` 的用法,是 GFM 添加的。
Ruby China 的 Markdown 也不标准,我也不知如何挽救。
我个人写文章的时候会用 AsciiDoctor,语法更清晰,实现更统一。
http://guides.rubyonrails.org/active_record_validations.html#conditional-validation
class Order < ActiveRecord::Base
validates :card_number, presence: true, if: :paid_with_card?
def paid_with_card?
payment_type == "card"
end
end
RTFM
http://guides.rubyonrails.org/active_record_validations.html#skipping-validations
save(validate: false)
#3 楼 @macknight config/database.yml
有人能,有人不能,中位数是不能。
突然发现自己怀孕了
年度强者提名。
汇率不是计算是查询吧。