摘要: [capybara介绍]capybara 的功能是模拟用户对界面的操作行为,在基于底层driver的基础上,提供一套统一的 界面交互api,如visit, click_link等。底层的driver有很多,可以是完全打开浏览器方式的driver(如:selenium-webdriver),也可以是基于headless webkit 的 driver(如:capybara-webkit, poltergeist)虽然capybara经常用在测试中,测试的时候用的最多的是rack-test driver,这样测试速度快,但是capybara也可以单独使用,模拟用户的浏览器界面操作,因此可以进行一些 阅读全文
posted @ 2013-06-20 22:28 kamechen 阅读(6121) 评论(0) 推荐(0) 编辑
摘要: [背景/应用场景]在不采用多应用单点登录的情况下,当不同应用之间希望实现自动登录的功能在共享用户数据库或类似的情况下, 而且不同应用部署在同一域名下的不同子域名,需要在一个应用登录之后,在另一个应用自动登录[Rails中的设置]设置不同应用之间相同的secret_token 和 session store的domain设置AppName::Application.config.secret_token = '......'AppName::Application.config.session_store :cookie_store, key: '_cookie_name 阅读全文
posted @ 2013-06-17 14:41 kamechen 阅读(540) 评论(0) 推荐(0) 编辑
摘要: nginx利用logrotate 切割日志的时候,两者指定的用户和组需要一致,而且,日志的文件夹用户,组也需要一致,否则可能会出现权限问题,导致日志无法写入[ nginx.conf 配置 ] user nobody nogroup;[ logrotate.d/nginx 配置] create 640 nobody nogroup[ 日志文件夹 用户 组] /var/log/nginx/ -> nobody nogroup 阅读全文
posted @ 2012-08-31 14:47 kamechen 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 有些时候,我们需要返回带html片段的JSON数据,这个在rails中,可以通过如下两种方式:方法一def show render json: { status: 'ok', html: render_to_string(partial: "/path/to/partial", locals: {}) }endrender_to_string是Rails内建的方法,render方法是基于这个方法的,下图是Rails 的render stack方法二render json templatedef show end# show.json.erb{ metadat 阅读全文
posted @ 2012-06-29 11:21 kamechen 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 撤消刚才的提交操作,可以使用 --amend 选项重新提交:git commit --amend在执行命令前将漏掉的文件增加进去取消已经暂存的文件git reset HEAD filename取消对文件的修改git checkout -- filename储藏并应用你的工作git stash# 产看stashgit stash list# 应用stashgit stash apply# 应用stash并删除stashgit stash pop 阅读全文
posted @ 2012-06-26 15:57 kamechen 阅读(243) 评论(0) 推荐(0) 编辑
摘要: Procfile:web bundle exec unicorn_rails -c config/unicorn.rb -E production用foreman export 命令输出成upstart的格式foreman export -u user upstart ./config/upstart-u -- 指定用户输出到./config/upstart下面,是因为可能在/etc/init下面没有写的权限,可以通过sudo 或让系统管理员 将config/upstart下面的文件copy到/etc/init下面这样就可以通过以下命令来启动,关闭,重启,app应用,而且在进程... 阅读全文
posted @ 2012-06-26 14:38 kamechen 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 1、基本配置在配置unicorn时,分两种情况preload_app truepreload_app falsepreload_app false的情况下,unicorn的master不预加载rails app整个环境,每个worker都会执行整个rails app.preload_app true的情况下,unicorn的master会预先加载rails app环境,而且在copy_on_write_friendly的情况下,每个worker都是从master执行写时复制的(节省资源)。如果是prelad_app true的情况,需要在before_fork中关闭database conne 阅读全文
posted @ 2012-06-26 14:10 kamechen 阅读(1255) 评论(1) 推荐(0) 编辑
摘要: 我们在application.rb中会使用config 进行如下类似的设置config.i18n.default_locale = 'zh-CN'# Configure the default encoding used in templates for Ruby 1.9.config.encoding = "utf-8"# Configure sensitive parameters which will be filtered from the log file.config.filter_parameters += [:password]而且在很多的r 阅读全文
posted @ 2012-05-15 10:22 kamechen 阅读(352) 评论(0) 推荐(0) 编辑