使用file_field_tag时出现以下错误:EOFError(错误内容正文)。这是一个已知错误,解决方案是更新机架安装。
不幸的是,如果我运行“bundle update rack-mount”,我会收到以下错误:
Bundler could not find compatible versions for gem "rack-mount":
In Gemfile:
rails (= 3.0.7) depends on
rack-mount (~> 0.6.14)
rack-mount (0.7.2)
这是令人愤怒的,因为每个人都告诉我捆绑器太棒了但是它所做的就是让我无法运行我需要的宝石版本。 GRR。
任何人都知道如何解决这个问题?我很惊讶我没有在Google上发现任何关于此问题的任何内容,因为现在使用rails 3上传文件是不可能的。
答案 0 :(得分:5)
看来rails版本3.0.7依赖于机架安装版本0.6.14,尝试编辑 Gemfile 中的gem 'rails', '3.0.x'
。其中x是另一个版本号,可以是6,5,4或任何你想要使用的而不是7,然后删除你的 Gemfile.lock 并尝试bundle install
。
答案 1 :(得分:1)
您是否尝试删除Gemfile.lock
并再次运行bundle install
?
答案 2 :(得分:1)
您无法使用bundler覆盖Rails依赖项。如果必须覆盖Rails要求,则应维护自己的分支。
git clone
)git checkout --track origin/3_0_9
)git checkout -b 3_0_9_with_new_rack_mount
)0.6.14
更改为0.7.2
git commit -am "Updated to a newer rack-mount version"
)git push origin 3_0_9_with_new_rack_mount
)gem 'rails', :git => "git://github.com/jevy/rails.git", :branch => "3_0_9_with_new_rack_mount" # Fixes carrierwave error)
bundle install