0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ユーザー作成時にアバター画像を登録させる

Posted at

結論

app/models/user.rb
class User < ApplicationRecord
   before_save { self.email = email.downcase }
+  before_create do
+    avatar.attach(io: File.open("#{Settings.default_image[:avatar_path]}"), filename: "#{Settings.default_image[:avatar]}")
+  end
   has_one_attached :avatar
   :
config/settings.yml
	:
default_image:
 avatar: "avatar.png"
 avatar_path: "app/assets/images/avatar.png"

解説

ユーザー作成時に自動的にアバター画像を登録させるプログラムを作成しました。
方法としては、モデルのコールバックメソッドを用いて(今回は before_create )、ユーザーオブジェクトが保存される前に、画像を添付しています。

2つ目のconfig/settings.ymlファイルに関しては、定数管理を扱うファイルであり、ファイル名のハードコーディングを防止する目的で利用しています。

以上です!記事に目を通して頂きありがとうございました!!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?