joppot

コピペで絶対動く。説明を妥協しない

プログラミング

ruby on railsのckeditorでcarrierwaveを使って画像をアップロードする

投稿日:2014年9月2日更新日:

Pocket

u90rju

概要

みなさんこんにちはcandleです。今回はckeditorの画像のアップロードを行ってみたいと思います。
ckeditorの画像のアップロードは公式githubにも記載されているのですが、まあやってみましょう。

前提

ckeditorがすでにruby on rails上で動いている。
もしも、まだckeditorの導入ができてない人は下の記事を参考にしてください。

ruby on railsのckeditor gemの使い方をscaffoldを用いて解説する
説明はruby on railsのscaffoldとtwitterbootstrapを使用します。



carrierwaveとrmagick系をインストールする

railsプロジェクトのGemfileを開いて下の内容を書き込みます。

gem 'carrierwave'

gem 'rmagick'
gem 'mini_magick'

writecarrierwavegem

保存したら下のコマンドでインストールします。

bundle install --path vendor/bundle

gemのインストールが完了しました。

ファイルアップロード用のモデルを作る

公式サイトにもあるようにファイルのアップロードにcarrierwaveを使う場合は下のコマンドで作成します。

rails generate ckeditor:install --orm=active_record --backend=carrierwave

このコマンドを行うといくつかのファイルが作成されます。
ckeditorの為のモデルやマイグレーションファイルが作られるので下のコマンドでデータベースに反映させます。

bundle exec rake db:migrate

これでサーバに画像をアップロードできるようになりました。

ファイルをアップロードする

サーバを起動しましょう

bundle exec rails s

railsのckeditorを適応したscaffoldのnewに移動します。
下のようにckeditorが表示されているでしょうか?

ckeditorstyle-1

画像を挿入するボタンを押します。すると、別のウィンドウが出てくるので、そのアップロードを押しましょう。

newwindowtouploadfile

続いて、ファイルを選択をクリックします。
画像ファイルを選択して、「サーバーに送信」を押します。

successuploadpngfile

上の画像の様に、画像ファイルが表示されれば、ファイルのアップロードがうまくいっています。

コンソールで画像があるか一応確認します。
railsプロジェクトのpublic/uploads/ckeditor/pictures/1/に移動します。
最後の階層の1か、もしかすると2になっているかもしれないので自分のプロジェクトに合わせて移動してください。

exsistuploadfile

アップロードできましたね。

まとめ

carrierwaveを使うと比較的簡単にファイルのアップロードができるので是非試してください。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-プログラミング
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

railsのrakeで作成したmigrationファイルとstatus履歴を削除する

概要 みなさんこんにちはcandleです。今回はrakeコマンドで作成したマイグレーションファイルの管理を紹介します。rakeコマンドを使っていると、よくよく考えれば必要の無いファイルがある。とか重複 …

Rails pluginを使ったgemの作り方[2](rails組み込み編)

概要 みなさんこんにちはcandleです。前回に引き続き、gemの作成をやっていきましょう。 今回はgemを作成したら、それをrailsプロジェクト上で読み込み、動作テストをするところをやります。 前 …

ruby on railsのckeditor gemの使い方をscaffoldを用いて解説する

概要 みなさんこんにちはcandleです。今回はruby on railsのckeditorという素晴らしいgemを使って見たいと思います。 ckeditorとはweb版の高機能なwordとかテキスト …

React NativeでGoogle Chrome上でのデバッグ時に動作が遅くなる場合の対処

English 日本語 概要 みなさんこんにちはcandleです。 今回はReact NativeのデバッグでChromeを使うと シミュレーターの動作が遅くなってしまう問題を対処します。 とは言って …

railsのsimple-captcha gemを使用してform_forを使ったフォームを画像認証する

概要 みなさんこんにちはcandleです。公に開かれたフォームはスパムや総当り攻撃を受けやすいです。 そこで、画像認証を導入して、悪意のあるフォームを拒否してみましょう。 simple-captcha …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ