Директория не пуста @ dir_s_rmdir Скрепка
Я хочу реализовать disable_with
в моей кнопке отправки, поэтому я делаю это так:
Мой взгляд:
= simple_form_for(@user, :url => update_profile_path, :method => :patch) do |f|
= f.input :avatar
= f.button :button, "Update".html_safe, data: {disable_with: "<i class='fa fa-spinner fa-spin'></i> Saving..."}
Мой контроллер:
def edit
@user = User.find_or_initialize_by(id: current_user.id)
end
def update_profile
@user = User.where(id: current_user.id)
respond_to do |format|
if @user.update(current_user.id, user_params)
format.html { redirect_to root_path, notice: 'Profile was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: 'edit' }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end
Моя модель:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
# Validations
validates :name, presence: true
geocoded_by :full_address
after_validation :geocode
has_many :posts, dependent: :destroy
has_many :comments, dependent: :destroy
# Paperclip
has_attached_file :avatar, :styles => { :thumb => "100x100>" },
:default_url => "users/avatars/missing.png"
validates_attachment_content_type :avatar, :content_type => /\Aimage/
validates_attachment_file_name :avatar, :matches => [/png\Z/, /jpe?g\Z/]
end
Он отлично работает с загрузкой небольших изображений, но когда я загружаю увеличенное изображение (около 200 КБ), я получаю сообщение об ошибке:
Errno::ENOTEMPTY at /user/update
Directory not empty @ dir_s_rmdir -
Однако, если я изменю это на кнопку обычной загрузки, вот так:
= f.button :submit, "Submit!", input_html: { id: "post-button", class: 'btn btn-primary'}
У меня нет ошибок при загрузке файлов. Я что-то пропустил? Спасибо за вашу помощь.
Обновить:
После сбоя я нажимаю кнопку "Назад" (или "Назад" и "Обновить") и пытаюсь загрузить ее снова, и она работает. Но если я открою страницу, используя обычный поток страниц, это не удастся. Так странно: |
Что я делаю для вызова страницы:
%a{:href => account_path(@user)} Account
И мои маршруты.рб
get "/user/account(.:format)" => "user#edit", as: :account