我正在为 Mac 中的 rails 应用程序寻找重构工具。在研究了一整周后,我有点惊讶地发现没有好的工具可以一次性重构命名空间/控制器/模型/视图/路由。我对 Mac 范式有点陌生,所以我可能遗漏了一些东西。
我可以看到为 Rails 开发的几个 gem,它们可以进行一些重命名/替换,但在重构后仍然需要“手动调整”。
为了满足我的要求,这里是标准 Rails 项目
# routes
map.namespace :admin do |admin|
admin.resources :items
end
match "/admin/items/:id/enable" => "admin/items#enable"
# model
/app/models/items.rb
class item < ActiveRecord::Base
end
# views
/app/views/admin/items/
/app/views/admin/items/index.html.erb
/app/views/admin/items/show.html.erb
/app/views/admin/items/new.html.erb
/app/views/admin/items/edit.html.erb
# controller
/app/controllers/admin/items_controller.rb
class Admin::ItemsController < ApplicationController
def index
#
end
def show
#
end
def enable
#
end
end
我对这个工具的要求非常基本:
重构:“item”到“product”——大小写匹配
- 工具应将任何包含“项目”的文件重命名为“产品”
- 工具应将任何包含“项目”的文件夹重命名为“产品”
- 工具应在当前或子目录中的所有文件中查找并替换“item”和“product”。
具有上述功能:
我可以通过以下方式简单地反应整个项目:
> refactor "item" "product"
> refactor "Item" "Product"
> refactor "admin" "shop"
> refactor "Admin" "Shop"
如果您能帮助我提供任何可以满足我上述要求的 Mac 工具或任何脚本的链接,将不胜感激。