Я скажу, что когда я только начал работать с несущей волны, все отлично работало, за исключением масштабирования размера аватара.
Так что теперь, после того, как я попытался выполнить масштабирование, все пошло к черту.Я удалил гем, выполнил миграцию для удаления аватара у пользователя, затем сделал еще одну миграцию для добавления.
Все та же ошибка.Заметьте, я делаю загрузчик аватар, а НЕ изображение.Я не коснулся файла avatar_uploader.rb, кроме добавления
require 'carrierwave/orm/activerecord'
в верхней строке.
Итак, действительно странная вещь:
Когда я вхожу в консоль и выполняю User.last
1.9.3p0: 001> User.last User Load (0,3ms) ВЫБЕРИТЕ "users". * FROM "users" ORDER BY "users". "id" DESC LIMIT 1 => #
Это так странно, , потому что база данных пользователей распознает изображение. Итак ... мысли?
Как уже говорилось, изначально этого не происходило.
В моей странице показа пользователей у меня есть
<p>
<label>My Avatar</label>
<%= image_tag(@user.avatar_url) if @user.avatar? %>
<%= f.file_field :avatar %>
<%= f.hidden_field :avatar_cache %>
</p>
В моей форме пользователя у меня есть:
<label>My Avatar</label>
<%= f.file_field :avatar %>
<%= f.hidden_field :avatar_cache %>
Я прикрепил окно сервера, чтобы показать вам, что происходит.
Started GET "/users/17" for 127.0.0.1 at 2012-03-12 13:26:28 -0500
Processing by UsersController#show as HTML
Parameters: {"id"=>"17"}
User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1
[["id", "17"]]
Rendered users/show.html.erb within layouts/application (1.9ms)
Completed 500 Internal Server Error in 5ms
ActionView::Template::Error (can't convert nil into String):
7:
8: <p>
9: <label>My Avatar</label>
10: <%= image_tag(@user.avatar_url) if @user.avatar? %>
11: <%= f.file_field :avatar %>
12: <%= f.hidden_field :avatar_cache %>
13: </p>
app/views/users/show.html.erb:10:in
`_app_views_users_show_html_erb__498619941080127768_2168209880'
app/controllers/users_controller.rb:18:in `show'
Любая помощь будет принята с благодарностью!Спасибо:)