簡體   English   中英

無法在Windows上將sqlite3與ruby 1.9.2和rails 3.0.0一起使用

[英]Cannot use sqlite3 with ruby 1.9.2 and rails 3.0.0 on windows

我首先要解釋一下我的背景,然后是問題:

  1. 我已經在不同的應用程序上使用Ruby on Rails 3年了,並且從1.2升級到2.3.9。 我想盡快升級到3.0.0。
  2. 我所讀到的所有內容都告訴我要使用當前的Ruby 1.9.2版本與Rails 3.0.0一起使用,因此我在Windows上安裝了預編譯的二進制1.9.2。
  3. 我記得sqlite3需要將DLL安裝在路徑中的某個位置,因此我將其復制到了新的bin目錄中。
  4. 我還安裝了必要的sqlite3-ruby。
  5. 我創建了一個新應用程序,生成了一個虛擬表遷移,並嘗試執行“ rake db:migrate”
  6. 答案是: rake aborted! no driver for sqlite3 found rake aborted! no driver for sqlite3 found

我四處搜索並找到了一些答案,這些答案告訴您自己安裝sqlite3的二進制文件(這對我來說是無法實現的)。

所以這是一個問題:

在Windows的Ruby 1.9.2上使用Rails 3.0.0的正確設置是什么?

順便說一句,當僅安裝sqlite3-ruby時,我得到了一個似乎有效的更新版本(1.3.1)。 但是當我想在rails中使用它時,rails堅持要安裝1.2.5版本(顯然對我不起作用)。

好吧,我知道這是不好的風格,但是我找到了一個解決方案。 我不知道為什么它最初不起作用...

我的解決方案是:

  1. 安裝最新版本的sqlite3-ruby(當前版本1.3.1)

  2. 該安裝為您(作為DOS外殼中的文本)提供了將正確的sqlite3.dll復制到何處的信息。 確保將其復制到Ruby的bin目錄中(或路徑上的其他任何位置)。

  3. 確保您的Gemfile(app-root / Gemfile)列出了要求:

    gem'sqlite3-ruby',“> = 1.3.1”,:require =>'sqlite3'

  4. 現在執行“ rake db:migrate”(然后應該可以工作)。

我沒有找到Rails 3.0.0堅持安裝sqlite3-ruby 1.2.5版本的原因,但是安裝了該版本后,sqlite3對我不起作用。

暫無
暫無

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

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