[RUBY] Manuel d'initialisation du stockage actif

introduction

Chose que tu veux faire

――Je souhaite enregistrer facilement une image

Ce que vous pouvez faire avec Active Storage

--Facile à associer des images avec des modèles

Essayez-le

Je vous suis redevable à chaque fois, mais j'oublierai à chaque fois la méthode de réglage initial, je vais donc en prendre note.

Le stockage actif est ** Gem ** pour le téléchargement de fichiers. À l'origine, c'était un joyau qui devait être installé en externe, mais comme il a été intégré à Rails, il n'est pas nécessaire d'installer un ensemble d'Active Storage lui-même.

URL de référence

Guide Rails> Présentation du stockage actif

procédure

--Introduction d'outils de traitement d'image

Introduction d'outils de traitement d'image

Installez ImageMagic

Qu'est-ce qu'ImageMagick?

L'une des bibliothèques de traitement d'image. C'est un logiciel, pas Gem, alors installez-le depuis Homebrew. Par conséquent, une fois construit, ce travail ne sera plus nécessaire la prochaine fois.

Terminal


% brew install imagemagick

Installation des gemmes requises

MiniMagick

Gemme pour la gestion d'ImageMagick en Ruby

ImageProcessing

Gemme pour le réglage de la taille de l'image

Gemfile


gem 'mini_magick'
gem 'image_processing', '~> 1.2'

Terminal


% bundle install

& Redémarrer le serveur

Installation et migration d'Active Storage

Étant donné qu'Active Storage est un joyau jusqu'au dernier, installez-le.

Terminal


% rails active_storage:install

Lorsque l'installation est terminée, une migration liée à Active Storage sera créée, donc migrez telle quelle.

Terminal


% rails db:migrate

association

Décrivez l'association dans le modèle que vous souhaitez gérer l'image.

models/profile.rb


class Profile < ApplicationRecord
  has_one_attached :image
end

À ce stade, il n'est pas nécessaire de fournir une colonne d'image dans la table cible.

Réglages de paramètres solides

Enfin, incluez l'image dans le paramètre strong.

profiles_controller.rb


class ProfilesController < ApplicationController

~ Omis ~

  private
  def profile_params
    params.require(:profile).permit(:image)
  end
end

Vous pouvez maintenant enregistrer les données d'image.

Afficher l'image enregistrée

Affichage à l'aide de la méthode image_tag.

example


image_modèle de balise.Nom de colonne
image_tag profile.image

Branche conditionnelle en fonction de la présence ou de l'absence d'une image

Si vous souhaitez modifier l'affichage avec ou sans fichier image, utilisez la méthode ci-jointe.

example


image_tag profile.image, class: 'profile-image'  if profile.image.attached?

*** * Rédigez un article sur le réglage de la taille de l'image! *** ***

en conclusion

Qiita, ceci est mon deuxième message. Je vais le mettre à jour chaque jour autant que possible jusqu'à ce que je manque de matériel.

Merci d'avoir lu jusqu'au bout! !!

✔︎

Recommended Posts

Manuel d'initialisation du stockage actif
Présentez le stockage actif
[Débutant] À propos du stockage actif
Déplacer le stockage actif sur S3 localement
[Rails] Comment utiliser Active Storage
Test unitaire sous l'environnement d'installation Active Storage
[Stockage actif] Paramètres de validation lors du téléchargement de fichiers
Rails Active Storage réduit les images avant le téléchargement
Publier / supprimer plusieurs images avec Active Storage