非常期待,加油!
翻译的不错!
正解,不过重点还是多看这种视频,把自己的听力练好!
不错的实践!学起来!
我们这是很多年前的数据库了,根据需要一步一步来吧。
这边书亚马逊买了英文电子版,看着比较吃力,看来得弄本中文版的看看。读过的朋友觉得翻译的如何?
很好的思考,现在这个社会人才太多,作为个体就是要专注,在某个领域不断深入,不断实践。同时思维上也要有一些哲学上的学习和思考来引导和约束自己。
对的
恩,索引速度和查询速度是一个考虑
这些改进都还挺喜人的,感觉走在争取的方向上。下个项目 5.1 走起。
@mengqing 你是哪位?我们公司去了好多人。
使用 Thread.current 在支持多线程的服务器下还是有问题的,建议大家使用gem 'request_store'.
Fred 一直作为榜样的存在,作为混迹在澳洲的 ruby developer 还是有好多要学习的。不过,英语对我来说始终是瓶颈,好好学英语。
很好的总结,也可以学习到很好的学习方法!
#2 楼 @holysoros 我居然还不知道 Solidus,谢谢推荐,看他们更新蛮快的。👍!
针对#6 楼提出的测试 ApplicationController 中 filter 的测试,我给出一个测试 Devise 的:authenticate_user! 的例子
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_action :authenticate_user!
end
然后创建一个/test/controllers/base_controller_test.rb
require 'test_helper'
class BaseController < ApplicationController
def index
head :ok
end
end
class BaseControllerTest < ActionDispatch::IntegrationTest
include Devise::Test::IntegrationHelpers
setup do
Rails.application.routes.draw do
get 'base' => 'base#index'
end
end
teardown do
Rails.application.reload_routes!
end
test 'redirects if user is not logedin' do
get '/base'
assert_response :redirect
assert_redirected_to 'http://www.example.com/'
end
test 'returns success if user is loggedin' do
sign_in users(:one)
get '/base'
assert_response :success
end
end
可以看到使用 minitest,代码更加直观,没有太多的 magic,直接定义一个临时的 controller 来测试验证登录的 filter
#6 楼 @scriptfans 是否一定要 TDD,这个也是个仁者见仁智者见智的事情,大牛们已经有很好的讨论。Is TDD Dead?,这两天我也会再学习一下。同时推荐大家也看看。
谢谢点赞,希望越来越多人使用 minitest + rails
controller 测试相对于 integration 测试更加轻量,我会主要在里面测试一些 edge cases(比如异常,错误信息,各种权限检查)。通过和引入 capybara 的 integration test 来测试用户的主要使用流程和功能。
#7 楼 @freefishz 是的,我也刚看过,结合 ruby 的 singleton class 也是很好理解的。
感谢楼主的分享,fork 后做了如下改动:
喜欢的拿走,不谢! 创建应用: rails new myapp -m https://raw.github.com/bingxie/rails-template/master/composer.rb
github 地址: https://github.com/bingxie/rails-template
@lyfi2003 顺便问一下 minitest 是否还保留着,我现在更加喜欢 minitest 来写测试。基本上能用 Rails 自带的就不选其他的。之前也是 slim 的粉丝,让设计都学会了 slim,现在我还是用 erb 了。