Parsletを利用してオレオレスクリプトを作成する
ParsletとはRubyで書かれたPEG(Parsing Expression Grammar)ベースの構文解析器です。こちらのgemを利用すると、Rubyのコードでエレガントに構文解析を記述することができます。
Paperclipで保存した画像ファイルの重複をRmagicでチェックする
ユーザがアップロードした画像をPaperclipで保持しているアプリケーションは、割と多いと思います。これら画像をアプリケーション内で管理したいと考えた時、上記の通り画像間の差分を取得したいという要求は以外と多いのではないでし ...
ancestryを利用してRailsのモデルにディレクトリ構造を定義する
データの保持にディレクトリ構造を求められるケースって、割と多くあると思います。ここはwindowsのフォルダみたいな感じにしてよ、とかお客さんから軽い調子で求められて、実はそれって意外と面倒臭いんですよ、などとお答えすると、し ...
Vue.Draggableを利用してv-listを動的に並び替える
要素をドラッグ&ドロップで並び替えしたいときって、割と頻繁にあるのではないかと思います。そういったときに便利なのが、Vue.Draggableです。こちらを利用すると、パソコンとスマホ、いずれの場合でも利用可能な並び替えが簡単 ...
DraperとSanitizeを利用したサニタイズ
ウェブアプリケーションを作成していると、ユーザに対してHTMLタグを入力、管理させる場面が度々出てくるかと思います。それは例えば、文字列の装飾であったり、ブログの隅に置かれたウィジットであったりです。
これを行う際 ...
Vue.js(Nuxt)でvue-apollo(apollo-module)を利用した際のエラーハンドリング
Vue.js/NuxtでGraphQLのクライアントを求めると、vue-apollo(apollo-module)に行き着くかと思います。そのコアコンポーネントとなるApollo clientは、非常に優れたライブラリでありま ...
nested_attributesなデータをseeds.rbで一括して投入する
Railsを利用していると、nested_attributesを利用する場面が多々発生するかと思います。親子関係にある複数のモデルを一括して管理できる、非常に便利な機能だと思います。ただ、こちらを利用した場合に、db/seed ...
db/seeds.rbを変更して環境毎のseedを作成する
rails new を行った直後にやることの一つとして、dbディレクトリ以下の変更がございます。元々は db/seeds.rbというファイルが存在しており、rake db:seedなどを利用して、データベースに初期データを投入 ...
capistranoとdocker-composeを利用してVPSにRailsをデプロイする
大々的に広告を打ち、大手を振ってリリースするサービスであれば、最初からAWSをたっぷりと使ってみたり、GKEで大量のノードをバラ撒いてみたりと、豪勢なデプロイ環境を整えるのもアリだと思います。
しかしながら、個人が ...
RailsでIDの代わりにUUIDを利用する
Railsでモデルを作成する場合、主キーとしてIDなるカラムが自動的に作成されます。このカラムは新しくリソースがcreateされるに応じて、インクリメントされていきます。
内部的に利用されるのみで、外部に露出しない ...