방금 sqlite3에서 PG로 변경했으며 pgAdmin을 통해 데이터베이스를 만들고 마이그레이션을 실행 한 후 이해할 수없는 다음을 실행합니다.PostgreSQL에서 DB 마이그레이션을 실행할 수 없습니다.
Pawel:bodb pawel$ rake db:create
DEPRECATION WARNING: Rake tasks in /Users/pawel/Ruby/apps/bodb/vendor/plugins/google_charts_on_rails/tasks/google_charts_on_rails_tasks.rake are deprecated. Use lib/tasks instead. (called from /Users/pawel/Ruby/apps/bodb/Rakefile:7)
firstdb already exists
Pawel:bodb pawel$ rake db:migrate
DEPRECATION WARNING: Rake tasks in /Users/pawel/Ruby/apps/bodb/vendor/plugins/google_charts_on_rails/tasks/google_charts_on_rails_tasks.rake are deprecated. Use lib/tasks instead. (called from /Users/pawel/Ruby/apps/bodb/Rakefile:7)
== AddLikesToUsers: migrating ================================================
-- add_column(:Users, :likes, :string)
rake aborted!
An error has occurred, this and all later migrations canceled:
PGError: ERROR: relation "Users" does not exist
: ALTER TABLE "Users" ADD COLUMN "likes" character varying(255)
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
레일즈가 모든 테이블을 생성하고 있으며 schema.rb는이를 소문자로 보여줍니다. – Simpleton
@Simpleton : 만약 그들이 ** 소문자라면 **이 문제는 ** 문제입니다. 쿼리는'ALTER users' 또는'ALTER Users'가 아니라'ALTER "Users"'를 읽습니다. –
@Simpleton :'add_column (: Users, : likes, : string)'이 맞지 않아서'add_column (: users, : likes, : string)'이어야합니다. 그래서 Erwin은 올바른 경로에 있습니다. –