さいごにはじめにこんにちは、onoです。以前、CarrierWaveを使って画像をアップロードするフォームを作成しました。CarrierWaveは多機能で使いやすいGemだと思いますが、コードが大きく複雑なため、一般的な使い方から外れた場合や問題が発生した場合に処理を追っていくのが大変です。そこで、今回は実装がシンプルで必要な機能を選んで追加できるShrineを使ってみます。Shrineとは簡単な説明Shrineはファイルをアタッチするためのツールです。画像をアップロードする際に利用されるのではないかと思います。Marohnić氏(リポジトリはこちら)が2015年9月から開発しています。主な特徴としては下記の2つが挙げられます。Shrine本体は必要最小限の機能のみを実装しているため、シンプルでコードが小さい。リサイズやダイレクトアップロードなど、必要な機能のみをプラグインで追加できる。下準備Gemを追加プロジェクトを作成後、Gemfileに下記のGemを追加します。画像をアップロードするディレクトリの指定と使用するプラグインを宣言します。アプリケーション全体で共通の設定は、config/initializers/で行います。formsテーブルを作成するアップロードした画像を管理するテーブルを作成します。'「アップローダに渡すシンボル名_data」とい名前にする't.timestampsendendend実装Uploaderの実装モデルにアタッチするアップローダを実装します。ディレクトリに指定はありませんが、app/uploaders/に追加していきます。実装したアップローダをアタッチします。下記の通り、scaffoldで生成したコードの一部を修正します。画像をアップロードするフォームを実装します。%>インサートされるレコードフォームから画像をアップロードして保存すると、下記のようなレコードがインサートされます。sec)さいごに今後はプラグインを追加して、ファイル名の変更、リサイズ、サムネイルの作成などを行なっていきます。助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。コメントをキャンセルメールアドレスが公開されることはありません。名前メールサイト上に表示された文字を入力してください。JavaでS3への画像アップロードNEXTConohaのサーバーを借りて、CentOS+MySQL+nginxの環境を作ってみた。私たちは無料アプリもリリースしています、ぜひご覧ください。下記のアイコンから無料でダウンロードできます。