我知道rails(https://github.com/get/Rename)的Rename插件,但有没有人知道在Rails 4.0.2中轻松重命名项目的方法,因为从Rails 4开始不推荐使用插件?
答案 0 :(得分:1)
只考虑你已经使用过
rails new blog
这将创建一个博客应用程序。现在,如果要重命名文件夹博客,只需使用
$mv blog blog_new
这将只重命名文件夹,应用程序将运行没有问题,因为外部文件夹名称更改不会影响应用程序。否则,您需要更改srt32指定的每个文件,但我没有看到任何从内部更改项目名称的具体原因。
答案 1 :(得分:0)
输入以下命令
$ rails new ProjectToRename
$ cd ProjectToRename
$ grep -ri 'project_?to_?rename'
终于完成了。
您需要自己重命名顶级目录:
$ cd ..
$ mv ProjectToRename SomeNewName
答案 2 :(得分:0)
假设您的应用名称是my_app,您可以从项目的根目录运行类似grep -r 'my_app' .
的内容,并找到引用应用名称的所有位置。更新它们应该不是那么糟糕。地方列表应该类似于:
答案 3 :(得分:0)
我已经编写了以下脚本来做到这一点。您也可以在https://gist.github.com/danielpclark/8dfcdd7ac63149323bbc
看到它#!/usr/bin/ruby
# Rename Rails Project (File: rename_rails)
# Copyright 6ft Dan(TM) / MIT License
# Check the config/application.rb for capital usage in project name by model OldProjectName
# Usage: rename_rails OldProjectName NewAwesomeName
# Replace string instances of project name
`grep -lR #{ARGV[0]} | xargs sed -i 's/#{ARGV[0]}/#{ARGV[1]}/g'`
`grep -lR #{ARGV[0].downcase} | xargs sed -i 's/#{ARGV[0].downcase}/#{ARGV[1].downcase}/g'`
# Rename Rails directory if it exists
if File.directory?(ARGV[0])
`mv #{ARGV[0]} #{ARGV[1]}`
drc = ARGV[1]
elsif File.directory?(ARGV[0].downcase)
`mv #{ARGV[0].downcase} #{ARGV[1]}`
drc = ARGV[1]
end
# Delete temporary files (helps prevent errors)
drc ||= ''
if ['cache','pids','sessions','sockets'].all? {
|direc| File.directory?(File.join(drc,'tmp', direc)) }
FileUtils.rm_rf(File.join(drc,'tmp'))
end
我在YouTube上创建了一个howto视频。 http://youtu.be/dDw2RmczcDA