也感觉第 4 点是不成立的。
有点意思,地址是这个 http://railshurts.com/quiz/
其中的 default
和 default_proc
一般用得少,但关键时刻还是挺好使的。
不错,用 x-mind 画的图哇?
account = Account.new(owner: nil) # account without an owner
account.owner.address
# => NoMethodError: undefined method `address' for nil:NilClass
account && account.owner && account.owner.address
# => nil
account.try(:owner).try(:address)
# => nil
account&.owner&.address
# => nil
account = Account.new(owner: false)
account.owner.address
# => NoMethodError: undefined method `address' for false:FalseClass `
account && account.owner && account.owner.address
# => false
account.try(:owner).try(:address)
# => nil
account&.owner&.address
# => undefined method `address' for false:FalseClass`
account = Account.new(owner: Object.new)
account.owner.address
# => NoMethodError: undefined method `address' for #<Object:0x00559996b5bde8>
account && account.owner && account.owner.address
# => NoMethodError: undefined method `address' for #<Object:0x00559996b5bde8>`
account.try(:owner).try(:address)
# => nil
account&.owner&.address
# => NoMethodError: undefined method `address' for #<Object:0x00559996b5bde8>`
# There's a stricter version of try - try! for you:
account.try!(:owner).try!(:address)
# => NoMethodError: undefined method `address' for #<Object:0x00559996b5bde8>`
可以考虑引入 Rubocop
等类似的代码检测、分析工具,减少人为犯错。
先运行 gem install nokogiri -v '1.6.8'
就可以看到具体的错误,然后 Google 上一搜,应该还好解决的。
#3 楼 @mulderlover 用的是 Chrome 的离线应用(免费),貌似也有 web 版的。
#1 楼 @catherine ,我也是带着问题去思考,收获多一些。
不错,很适合做些后台管理工具。
还有就是建议尽量上点示例代码,这样大家容易看懂,从而更易帮助到你。
赞一个
不错,
分析得有道理
enjoy 解决问题的过程才是重点
#1 楼 @catherine Memory Optimization Associated Object 这点好理解点。
你应该是嫌 log 太长,干扰你。感觉可以通过调整 log.level 来实现。
#2 楼 @lzm420241 推荐看上面 rei 说的那个连接,我们团队也推广这套命名规范。
不错,不过文档中的排版序号没弄对(连续多处都用的是 1)
很有用,
试试 f.submit '<i class="fa fa-search"></i>', name: 'commit', class: 'btn btn-flat'
一般都是 gem 版本、ruby 版本不兼容所致。分别看下如下输出,看看是否是你想要的:
rvm list
rvm gemset list