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.
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/*
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
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