尝试从Rails应用程序

时间:2015-09-17 21:37:14

标签: mysql ruby-on-rails

我目前正在开发一个将使用现有远程MySQL数据库的Rails应用程序。我能够正确设置database.yml并连接到数据库。我可以通过创建相同名称的模型来访问rails控制台中的数据库表,但不执行任何迁移。但是,在浏览器中,我不断收到以下错误:

ActiveRecord::PendingMigrationError
Migrations are pending. To resolve this issue, run: bin/rake db:migrate RAILS_ENV=development

为了确保我已覆盖所有基础,我还在establish_connection(:development)文件中添加了self.table_name = 'users'user.rb,但尚未运气。任何帮助将不胜感激!

作为参考,我已经关注这些资源:
  - https://hackhands.com/ruby-rails-tutorial-creating-rails-instance-existing-mysql-db/
  - how to make rails external database calls?

另外,我在这个应用程序中使用Rails 4.2.4和ruby 2.2.3。

1 个答案:

答案 0 :(得分:1)

没有架构迁移表。即使没有迁移,您也需要一个空白的迁移。如前所述,在错误消息中运行rake db:migrate并创建表。

假设您有写访问权。

如果rake db:migrate因某些边缘情况原因不起作用,以下应该可以创建它。这只是来自PGAdmin表信息窗口。

CREATE TABLE schema_migrations
(
  version character varying(255) NOT NULL
)
WITH (
  OIDS=FALSE
);
ALTER TABLE schema_migrations
  OWNER TO whatever~owner;

CREATE UNIQUE INDEX unique_schema_migrations
  ON schema_migrations
  USING btree
  (version COLLATE pg_catalog."default");