Я получил скрепку для работы на моей системе без проблем.В этом недавнем приложении, которое я создавал, по какой-то причине я не могу получить скрепку для сохранения изображения, хотя файл журнала говорит, что это так, он не отображается в базе данных sql.
Единственное различие, которое у меня есть, это использование Devise и вопрос о том, есть ли какие-то дополнительные настройки, которые мне нужно изменить.
В файле журнала написано:
Started POST "/users/1" for 127.0.0.1 at Fri Dec 10 14:56:52 -0800 2010
Обработка UsersController #обновить как параметры HTML: {"commit" => "Update", "authenticity_token" => "JexxammsT + VPzqwbLr / YohuY4vcpBFdfVrOwDjDQEUo =", "utf8" => «✓», «id» => «1», «user»=> {"avatar" => #, @ headers = "Content-Disposition: form-data; name = \" user [avatar] \ "; filename = \" Nice-Smile.jpg \ "\ r \ nContent-Type: image / jpeg \ r \ n ", @ content_type =" image / jpeg ", @ original_filename =" Nice-Smile.jpg ">}} Загрузка пользователя (3,1 мс) ВЫБРАТЬ" users ". * ИЗ" users "WHERE ("users". "id" = 1) LIMIT 1 Пользовательская нагрузка (0,5 мс) ВЫБЕРИТЕ "users". "id" FROM "users" WHERE ("users". "email" = 'mrussellharrison@gmail.com') AND ("users" .id <> 1) LIMIT 1 [paperclip] Сохранение вложенияц.Перенаправлено на http://localhost:3000/users/1 Завершено 302 Найдено за 124 мс
Запущен GET "/ users / 1" для 127.0.0.1 в пт. 10 декабря 14:56:52 -0800 2010 Обработка UsersController # показать как HTMLПараметры: {"id" => "1"} User Load (3.1ms) ВЫБРАТЬ "users". * FROM "users" WHERE ("users". "Id" = 1) LIMIT 1 CACHE (0.0ms) SELECT "users". * FROM" users "WHERE (" users "." Id "= 1) LIMIT 1 Рендеринг пользователей / _basic_info.html.erb (2.0ms) Рендеринг макетов / _stylesheets.html.erb (5.2 мс) Рендеринг макетов / _header.html.erb (12,1 мс) Рендеринг макетов / _footer.html.erb (2,4 мс) Рендеринг пользователей / show.html.erb в макетах / приложение (47,2 мс) Выполнено 200 OK за 167 мс (Просмотры: 62,2 мс | ActiveRecord: 6,6 мс)
Запущен GET "/avatars/small/missing.png" для 127.0.0.1 в пт 10 декабря 14:56:53 -0800 2010
Запущен GET "/ avatars / small / missing.png "для 127.0.0.1 в пт. 10 декабря 14:56:53 -0800 2010
ActionController :: RoutingError (нет совпадений маршрутов) /avatars/small/missing.png"):
Вот мой контроль пользователейer:
class UsersController < ApplicationController
def home
@user = User.find(params[:id])
end
def index
@user = User.all
@title = "All users"
end
def show
@user = User.find(params[:id])
@title = current_user.first_name
end
def create
@user = User.new(params[:user])
if @user.save
flash[:notice] = "Profile Updated"
redirect_to @user
else
render :action => 'new'
end
end
def update
@user = User.find(params[:id])
if @user.update_attributes(params[:product])
flash[:notice] = "Profile Updated"
redirect_to @user
else
render :action => 'edit'
end
end
end
А вот моя модель пользователя:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :lockable, :timeoutable and :activatable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :first_name, :last_name, :avatar
attr_accessible :bio, :sex, :birthday, :facebook, :twitter, :hometown, :current_city, :interested_in, :looking_for
validates :first_name, :presence => true,
:length => { :maximum => 50 }
validates :last_name, :presence => true,
:length => { :maximum => 50 }
has_attached_file :avatar, :styles => { :thumb => "50x50#",
:small => "150x150>",
:medium => "300x200>",
:large => "600x600>" },
:url => "/assets/users/:id/:basename/:style.:extension",
:path => ":rails_root/public/assets/users/:id/:basename/:style.:extension"
validates_attachment_size :avatar, :less_than => 5.megabytes
validates_attachment_content_type :avatar, :content_type => ['image/jpeg', 'image/jpg', 'image/png', 'image/gif']
end
Я много раз пробовал много раз, но не уверен, почему файл не сохраняется.Спасибо за любую помощь заранее.