Ask and Learn

RSpec 中使用 FactoryGirlcreate_list 批量生成记录时,经常出现记录并未创建的问题。

let(:posts) { create_list(:post, 3) }

it 'returns post list' do
  get '/api/v1/posts'
  expect(json.size).to eq 3 # Fail: expect 3, got 0
end

这里期望是返回长度 3 的,结果返回了 0,本来以为是 FactoryGirl ...

阅读全文…

作为一个程序员,尤其是一个远程工作的程序员,翻墙的技术可以说是立身之本,作为一个常年翻墙者, Shadowsocks 和 VPN 那都得备着,SS 是自己搭建的,只有一个服务器可以用,没有什么最快的概念, 这里我讲讲 VPN。

VPN 我使用的是云梯的服务,用了两年左右了,以前还写过一个批量创建 VPN 配置的文章, 不过自从入了 MBP 后,官方有 OSX 一键安装的脚本,方便多了。

没有哪个翻墙服务是一一直稳定的,云梯也是一样,虽然有多个服务器可以切换,但一个个试也比较烦, 于是有...

阅读全文…

公司最近开始使用 Tower 来管理和协作一些国内的项目, 加上我平常就在用 Tower 来管理一些日常事务和开源项目, 所以使用 Tower 的机会就更多了,随之也带来些问题, 在不同团队的项目间频繁切换是非常麻烦的, 所以我写了这个扩展来实现快速切换的功能。

这个扩展在公司内部推广后,收到一些好评,随着使用 Tower 的深入, 我又遇到另一些问题,这些问题都会在这一版本中解决。

太占地方的事件信息

事件流

在讨论中,事件流会占比较多的地方,比较影响阅读,但直接隐藏又不太好, 所以在...

阅读全文…

jquery_ujs 对 rails 来说,是一个非常重要的组件,它包含在 rails 的默认组件之中。

jquery ujs 包含一些非常便捷的功能,比如确认对话框、触发 ajax、自动禁用表单提交按钮等,本文主要讨论的是触发 ajax 的功能。

通过添加简单的标签属性,jquery ujs 可以把一个普通的链接或者表单转换成 ajax 提交,而不需要写 JavaScript 代码。

<%= link_to '关闭项目', close_project_path(project), remote...
阅读全文…

做 Rails 开发的都不陌生 Asset Pipline,在《Rails Assets Pipeline 的价值》 这篇讨论中有详细讲到。

如果使用 Asset Pipline,在 Rails 中引入一个第三方的前端组件时,通常有两种方式:

  • 将第三库的脚本拷备到应用中,通过 Asset Pipline 引入
  • 安装有些开发者封装好的前端组件的 Ruby Gems

前者很费力,你需要将组件按 Rails Asset Pipline 组织脚本的方式来拆开组件的脚本, 然后分别引入,甚...

阅读全文…
« 上一页 下一页 »