Я искал повсюду в течение 3 часов, и я ничего не мог найти ... ни одной вещи.
Вот моя проблема:
# User Model
class User < ApplicationRecord
has_one :profile, class_name:"UserProfile", dependent: :destroy
accepts_nested_attributes_for :profile
end
# UserProfile Model
class UserProfile < ApplicationRecord
belongs_to :user
has_one_attached :avatar
end
# Form
<%= simple_form_for(current_user, :url => update_profile_settings_path, :method => :put) do |f| %>
...
<%= f.simple_fields_for :profile do |p| %>
<%= p.input :avatar %>
<%= p.input :firstname %>
<% end %>
<% end %>
# Controller
def update_profile_settings
if current_user.update(user_params)
redirect_to account_profile_settings_path, notice: 'Vos données ont bien été modifiées.'
else
render :profile_settings
end
end
private
def user_params
params.require(:user).permit(:id, :email, :avatar, :password, :password_confirmation, :current_password, profile_attributes: [:id, :firstname, :lastname, :bio, :birth_date, :avatar])
end
Проблема:
По какой-то причине, если я только попытаюсь загрузить аватар, он не будет работать.
НО, если я попытаюсь загрузить аватар и обновлю другое поле как хорошо (скажем, поле имени, которое также является вложенным_атрибутом пользователя), тогда аватар загружается / обновляется.
Может кто-нибудь помочь, пожалуйста?
Я перепробовал все, не смог найти что угодно ... Это сводит меня с ума.