[RUBY] [Rails] So laden Sie Bilder mit Carrierwave hoch

Was ist Trägerwelle?

Einfach ausgedrückt handelt es sich um eine Rails-Bibliothek (Juwel), mit der Sie problemlos Funktionen zum Hochladen von Bildern hinzufügen können. Sie können die Größe des hochzuladenden Bildes angeben.

Gespeicherte Datei des geposteten Bildes ▼

Die veröffentlichten Bilder werden in der Öffentlichkeit der Anwendung gesammelt. Wenn Sie Ihre Bilder nicht auf GitHub verwalten müssen, fügen Sie .gitignore wie folgt eine Beschreibung hinzu Schaffe es nicht mit Git.

# .Zum Gitignore hinzufügen
public/uploads/*

So fügen Sie Carrierwave hinzu ▼

In der Reihenfolge von oben ausführen.

#Im Terminal ausführen
$ brew install imagemagick 
#Gemfile hinzufügen
gem 'carrierwave'
gem 'mini_magick'
#Im Terminal ausführen
$ bundle install
#Im Terminal ausführen
$ rails g uploader image
# app/models/Postmodell.Edit rb
mount_uploader :image, ImageUploader
# app/uploaders/image_uploader.Edit rb
class ImageUploader < CarrierWave::Uploader::Base
  # Include RMagick or MiniMagick support:
  # include CarrierWave::RMagick
  include CarrierWave::MiniMagick
  # storage :fog
#~ Abkürzung ~
  process resize_to_fit: [800, 800]
#~ Abkürzung ~
end

Kommentar ▼

Nachdem Sie "Brew Install Imagemagick" ausgeführt haben, installieren wir den erforderlichen Edelstein. Fügen Sie "Carrierwave" und "Minimagick" zur Gemfile hinzu und führen Sie die Bundle-Installation vom Terminal aus.

Als nächstes erstellen wir einen Bild-Uploader. Wenn Sie im Terminal den Befehl "Rails g Uploader Image" ausführen, wird image_uploader.rb im Verzeichnis app / uploaders erstellt.

Bearbeiten Sie nach dem Erstellen des Uploaders das Modell für den Beitrag und beschreiben Sie, wie "image_uploader" bereitgestellt wird.

Zuletzt bearbeiten wir image_uploader.rb, damit wir die Größe des Bildes über MiniMagick ändern können. Kommentieren Sie das "include Carrier Wave :: MiniMagick" in Zeile 5 aus.

Fügen Sie danach an einer beliebigen Stelle "process resize_to_fit: [vertikale Größe, horizontale Größe]" hinzu. (Größe ist beliebig) resize_to_fit bedeutet, dass die Größe des Aspekts innerhalb der angegebenen Größe geändert wird, während das Seitenverhältnis beibehalten wird.

Recommended Posts

[Rails] So laden Sie Bilder mit Carrierwave hoch
[Rails] So laden Sie mehrere Bilder mit Carrierwave hoch
[Rails] So laden Sie Bilder mit Carrierwave und Fog-Aws in AWS S3 hoch
[Schienen] Wie poste ich Bilder?
[Schienen] Speichern Sie Bilder mit Carrierwave
[Rails] So laden Sie Bilder mit refile und refile-s3 in AWS S3 hoch
So laden Sie Bilder von AWS S3 herunter (Rails, Carrierwave)
So implementieren Sie die Image-Veröffentlichung mithilfe von Schienen
[rails6.0.0] Speichern von Bildern mit Active Storage im Assistentenformat
CarrierWave Laden Sie mehrere Bilder hoch
Wie schreibe ich Rails
So deinstallieren Sie Rails
[Rails] So erstellen Sie ein Diagramm mit lazy_high_charts
Laden Sie einfach mehrere Bilder mit Rails Rails + Carrierwave + Cloudinary hoch
So verknüpfen Sie Bilder mit FactoryBot Active Storage
Umgang mit hochgeladenen Bildern
[Rails] Verwendung von Enum
So minimieren Sie Java-Images
[Rails] Verwendung von Enum
Wie man Schienenrouten liest
Verwendung von Rails Join
So beenden Sie den Rails-Server
Wie schreibe ich Rails Seed
[Rails] Verwendung der Validierung
[Schienen] So deaktivieren Sie Turbolinks
[Rails] So verwenden Sie authenticate_user!
[Rails] So implementieren Sie Scraping
[Schienen] Wie man Samen macht
Wie schreibe ich Rails Routing
[Rails] So installieren Sie simple_calendar
[Rails] So installieren Sie reCAPTCHA
[Schienen] Verwendung von Scope
So autorisieren Sie mit graphql-ruby
So implementieren Sie ein kreisförmiges Profilbild mit CarrierWave und R Magick in Rails
[Rails API + Vue] Laden Sie Bilder mit Active Storage hoch und zeigen Sie sie an
Verhindern Sie Vorgänge! Sichere manuelle Datenaktualisierungsmethode für Rails mithilfe von Transaktionen
Festlegen und Beschreiben von Umgebungsvariablen mit Rails zsh
So stellen Sie jQuery in Rails-Apps mit Webpacker bereit
[Rails] Wie man Edelstein "devise" benutzt
Bild-Upload mit CarrierWave ~ Rspec-Test ~
[Schienen] Verwendung von Geräten (Hinweis)
[Rails] Verwendung von Flash-Nachrichten
[Rails] Anzeigen von Datenbankinformationen
[Schienen] So verhindern Sie den Bildschirmübergang
Verwendung von Ruby on Rails
So stellen Sie Bootstrap auf Rails bereit