簡體   English   中英

數據庫連接錯誤? 使用Postgres

[英]Database connectivity error? Using Postgres

我正在嘗試在測試環境中使用Rspec運行測試,但是我的數據庫是空的,顯然當我運行db:seed命令時,它顯示

> $ rake RAILS_ENV=test db:seed 
> Warning: method `create` already defined
> Warning: method `update` already defined   
environment -->   1.050000 > 0.240000   1.290000 (  1.506180)   
db:load_config -->   0.010000   0.010000   0.020000 (  0.009816)   
db:abort_if_pending_migrations -->   0.010000   0.000000   0.010000 (  0.030057)
db:seed -->   1.070000   0.250000   1.320000 (  1.547370)

如果我檢查我的種子文件,則全部清空。 假設我創建了一個包含Coin的數據庫,並且如果我這樣運行它:

> $ rails c Running via Spring preloader in process 4229 Loading test
> environment (Rails 5.1.4) 
[1] pry(main)> Coin.all   Coin Load (0.5ms) 
> SELECT "coins".* FROM "coins"
> => []

里面什么也沒有。 不管我跑什么

$ rake db:migrate
Warning: method `create` already defined
Warning: method `update` already defined
  environment -->   1.030000   0.200000   1.230000 (  1.409833)
  db:load_config -->   0.010000   0.000000   0.010000 (  0.009251)
  db:schema:dump -->   0.020000   0.010000   0.030000 (  0.150969)
  db:_dump -->   0.020000   0.010000   0.030000 (  0.151114)
  db:migrate -->   0.040000   0.020000   0.060000 (  0.219740)

這就是我所得到的。

它看起來像是:

$ rails c
Warning: method `create` already defined
Warning: method `update` already defined
Running via Spring preloader in process 3940
Loading development environment (Rails 5.1.4)
[1] pry(main)> Coin.all
  Coin Load (2.8ms)  SELECT "coins".* FROM "coins"
=> [#<Coin:0x007ff5313aa4e8
  id: 1,
  coin_id: "btc",
  display_name: "Bitcoin",
  price_btc: "1",

但這僅適用於開發環境。 我想讓它在測試環境中工作。 我將非常感謝所有建議。 謝謝!

您可以從spec_helper.rb或您正在使用的任何程序運行種子耙任務, spec_helper.rb是一個示例:

YOU_AWESOME_APP::Application.load_tasks
Rake::Task['db:seed'].invoke

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM