Skip to content
Weibo's Home
Go back

Rails best practices

Edit page

Introduction

Rails best practices 是一個可以幫你檢查 Rails 專案架構的 gem

比如說你在 route 裡面增加了一些 routing path 但是你的 controller 沒有相對應的 action 的話

它就會幫你檢查出來,並且顯示警告訊息

Installation

Add following line to Gemfile.rb

gem 'rails_best_practices', require: false
gem 'rails_best_practices-rake_task', require: false

rails_best_practices 是本身檢查架構的 gem rails_best_practices-rake_task 是方便寫 rake task 的 gem

Customize

要是想要 custom 一些 config

可以打指令產生 config

rails_best_practices -g

會產生 /config/rails_best_practices.yml

config 大概長得像這樣

#MoveModelLogicIntoModelCheck: { use_count: 4 }
NeedlessDeepNestingCheck: { nested_count: 2 }
NotRescueExceptionCheck: { }
NotUseDefaultRouteCheck: { }
NotUseTimeAgoInWordsCheck: { }
#OveruseRouteCustomizationsCheck: { customize_count: 3 }
ProtectMassAssignmentCheck: { }
RemoveEmptyHelpersCheck: { }
#RemoveTabCheck: { }

不想要檢查的 rule 可以直接註解掉即可

Rake task

如果要整合 travis ci 在每次 code push 的時候檢查架構的話,就要把 rails_best_practices 寫成 rake task,然後寫成 rake default 會跑的 task

lib/tasks/rails_best_practices.rake 加上這幾行

require 'rails_best_practices/rake_task'
RailsBestPractices::RakeTask.new

然後修改一下 Rakefile

require_relative 'config/application'
Rails.application.load_tasks
task default: [:rails_best_practices]

這樣當你打 rake 的時候就會自動幫你檢查架構了

References


Edit page
Share this post:

Previous Post
qira introduction
Next Post
Rails on Ubuntu