Rails 2에서 응용 프로그램의 이름을 바꾸는 방법이 있습니까?Ruby on Rails 응용 프로그램의 이름 바꾸기
답변
그냥 응용 프로그램 디렉토리의 이름을 바꿉니다. 나는 몇 번이나 아무런 문제도 없었다.
레일 2에는 실제로 '이름'응용 프로그램 개념이 없습니다. 앱을 식별하는 유일한 것은 폴더 자체의 이름입니다.
레일즈 3에서는 약간 다릅니다. Rails 3 프로젝트는 config/application.rb
에 정의 된 모듈과 이름이 같습니다. 이 응용 프로그램 모듈은 응용 프로그램을 저장하는 데 사용되며 config.ru
, config/routes.rb
, config/environment.rb
및 config/environments/
에 정의 된 모든 환경에서 참조하는 것을 볼 수 있습니다.
터미널 세션을 열고 명령 rails new myapp
을 실행한다면, 당신의 config/application.rb
파일이 레일을 확장하는 응용 프로그램 클래스를 정의 할 것이다 내부의 모듈 Myapp
:: 응용 프로그램을 정의하는 것입니다. 다른 모든 파일은 Myapp::Application
을 참조합니다.
레일 2와 3에서 모두 config/initializers/session_store.rb
에 정의 된 문자열 키를 찾을 수 있습니다. 기본값은 '_ <myapp> _session'입니다. 실수로 세션 키 이름이 다른 응용 프로그램과 충돌하지 않도록 응용 프로그램의 "이름"과 실제로 동기화되지는 않지만 동기화해야합니다.
앱의 이름을 바꾸어야하는 파일의 위치 수 (Rails 3.1). 그렇지 않으면 서버를 시작할 수 없습니다.
1) 디렉토리
2) Application.rb 파일에 module (yourapp)
이름 바꾸기를 바꾸기 : 그래서 다음을 수행합니다.
3) 다음 파일에 (yourapp)::Application
이름 바꾸기 :
environment.rb에
routes.rb
config.ru
Rakefile
초기화/secret_token.rb
을이니셜 라이저 S/session_store.rb
환경 또한 (yourapp) _development에 config.database.yml.sqlite3에 데이터베이스 이름을 바꿀 수 있습니다
4)/test.rb, production.rb 및 development.rb (yourapp) _test 등.이 경우 데이터베이스를 다시로드해야 할 수도 있습니다. yaml_db gem과 rake db:reload
을 사용하여이 작업을 수행했습니다.
그렇게해야합니다.
레일즈 3 앱의 이름을 바꾸는데 문제가있었습니다. 나는 그 때 this plugin를 발견했다. 그리고 그것은 매력처럼 작동한다.
당신은 그냥 그렇게 다음 스크립트를 작성했습니다
레일즈 3.2.11에서 유용했습니다. –
레일 4에서도 작업했습니다. –
환상적이기 때문에 Rails 4에서도 나에게 도움이되었습니다. 매우 편리한 보석. – emery
3 응용 프로그램을 레일에게 이름을 https://github.com/morshedalam/rename를 사용할 수 있습니다. 당신은 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의 하우투 비디오를 만들었습니다. http://youtu.be/dDw2RmczcDA
- 1. Ruby on Rails 응용 프로그램
- 2. 이메일 표시 Ruby on Rails
- 3. Ruby on Rails 그래프
- 4. Ruby on Rails & Javascript
- 5. ruby on rails 스코프 (검색)
- 6. Ruby on Rails 블로그
- 7. 정규식 + Ruby On Rails
- 8. Ruby On Rails 마이그레이션
- 9. Ruby on Rails 쿼리
- 10. Ruby on Rails + Devise
- 11. Mootools + Ruby on Rails ==?
- 12. Ruby on Rails 관계
- 13. ruby on rails + iis7
- 14. IIS7의 Ruby on Rails
- 15. Ruby On Rails Application.html.haml
- 16. Ruby on Rails 튜토리얼
- 17. Ruby on Rails + Ajax
- 18. Ruby on Rails - 로그인
- 19. Ruby on Rails : Model
- 20. Ruby on Rails 스위치
- 21. Ruby on Rails 국제화
- 22. ruby on rails redirect_to
- 23. Ruby on Rails Listener
- 24. Ruby on Rails 응용 프로그램 호스팅
- 25. Ruby on Rails 응용 프로그램 디버깅 1.9.2
- 26. ruby on rails 응용 프로그램 : 사용자 권한
- 27. Ruby on Rails : 응용 프로그램 디버깅 문제
- 28. Ruby on Rails 응용 프로그램을 어떻게 제거합니까?
- 29. Ruby on Rails : 세션과 ActiveResource?
- 30. Ruby on Rails 사용자 설정
정말 고맙습니다. –
+1! 번거 로움없이 멋지게 작동합니다. 레일즈 3을 사용하고 있습니다 : P – uday