とーますメモ

Ruby on Rails / Goなどの学習メモ

2017-01-01から1年間の記事一覧

【Activeadmin超入門】CanCanCanの設定 〜その2〜

前回の【Activeadmin超入門】インストール・環境設定 〜その1〜 - とーますメモに続けて、権限管理を行うためのCanCanCanの設定を書いていく。前の記事にも書いたとおり、CanCanCanはCanCanの後継プロジェクトであり、 設定の仕方はCanCanと同じように記述…

【Activeadmin超入門】デザイン・スキン変更 〜おまけ〜

複数の管理画面をactiveadminで使用している場合は 間違わないようにするために、できれば違うデザインを反映させたいところ。ここではActiveadminで使用できるスキンである「ActiveSkin」を紹介する。github.com 1)インストール gem 'active_skin' 2)SC…

【Activeadmin超入門】インストール・環境設定 〜その1〜

Activeadminとは 要は「管理画面」系のRailsアプリをお手軽に作ることができるgem。デザインは単調なものだが、決まったやり方に沿って作れば、 CRUD画面、検索フィルター、バッチ処理、CSV出力などの処理 また連携するgemを入れることでユーザ認証、権限管…

【Google Home】超絶便利!電話のかけ方

※現在の時点(2017/12/19)では、アメリカとカナダしか対応していない。Google Homeを使用して電話をかける場合で 「名前で電話をかけたい場合」は、Google連絡先(Google Contacts)に相手の連絡先を 設定しておく必要がある。 ※番号で電話をかける場合は上…

【Google Home】音声の英語設定の仕方

自分の場合、知り合いの英語ネイティブにも使用してもらいたかったので 英語の設定が必要になった。設定は簡単で、 Google Homeアプリを開き、 設定画面から「その他の設定」-> 「デバイス(例: オフィス、キッチン」-> 「アシスタントの言語」からGoogle音…

【Google Home】複数ユーザ登録の方法

Google Homeに自分の声を登録するには App StoreもしくはGoogle Playで Google Homeアプリをダウンロードする必要がある。また複数人のユーザ(家族や友人)の登録も 同じようにGoogle Homeアプリをダウンロードし 声を登録させれば良い。最大で6人まで登録…

【ShopifyApp × Rails】Embedded Appsの設定について

RailsでShopifyアプリを作成する際は、 公式から配布されているgemである「shopify_app」を使用して アプリを作成するのが普通だと思う。github.comこのgemを介して、アプリの初期設定を行うと 現時点(2017/12/15)では アプリはデフォルトで「Embedded app…

【Rails】select_tag使用時にデフォルト値を設定する方法

ググってもさっくり結果が出なかったので自分用のメモ。select - リファレンス - - Railsドキュメント上記の公式ページを見ると、 optionsの設定には、「options_for_select」を使用しているが :selectedを指定している例がなかったので調べたら、 やっぱり…

【RSpec】テスト時に他のDBと同じデータを使いたい!

結論から書くと以下。1)seed_dumpでDBからデータを抽出 2)db:seed用のrakeタスクを作成 3)1)で作成したファイルを指定し、データを挿入FactoryBot(旧:FactoryGirl)では面倒くさい時、 開発用などデータが入っているDBのデータを、 そのまま利用し…

【CircleCI2.0】Rspecの並行テストの設定

RailsのCircleCIのサンプルyml(Sample.yml)を見ると 以下のような記述がある # run tests! - run: name: run tests command: | mkdir /tmp/test-results TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timing…

【CircleCI2.0 ✕ Rails】database.ymlはpushしたくないけど、CircleCIを使うにはpushしないといけない問題

自社の開発では、database.ymlは .gitignoreに追加し、リポジトリにpushしない方針にしている。そしてチームメンバーは各々のユーザ名やパスワードを database.ymlに設定し、各環境のDBを使用する。 ※チームメンバーの開発環境(VM)が全て同じものであるな…

【CircleCI2.0】困った!RailsとMySQLのconfig.yml設定

CircleCI2.0の公式サイトを見ると、PostgreSQLについての設定例はあるのだが 一番知りたいMySQLの設定例が無い。circleci.comそして、自分は今回初めてCircleCIを利用する初心者。そして色んなサイトを参考にしようと、調べては見るものの 自分がよくわかっ…

【CircleCI2.0】config.ymlのworking_directoryの設定と、Gemのキャッシュ

working_directoryを設定することで リポジトリをチェックアウトする場所を設定するが 何も設定しない状態だと、デフォルトのチェックアウト場所は「home/circleci/project」になる。将来的に複数のプロジェクトを利用するなどの場合を想定すると それぞれの…

【CircleCI2.0】入れておきたいGem

Rubocop 書かれたRubyコードが「コーディング規約」通りに 書かれているかチェックしてくれる。チェックさせないファイルを指定したり、 一部チェックを無効化したりすることもできる。また既存のプロジェクトに導入した場合などで 大量に直さないといけない…

【MySQL】高速化メモ

[参考元] Top 20+ MySQL Best Practices 面白いと思ったTips 結果が1件であると予め知っている場合でも「Limit 1」をつけたほうが良い 「PROCEDURE ANALYSE()」を使用し、最適な型やサイズの提案を貰う。

【Shopify】アプリの種類についてまとめてみた

大きく分けて3つあるが、 使用できる基本的な機能は同じ。 ただし作り方や、一部(後述)のAPIが違う。 1)Private App 名前の通り、App Storeで公開はせず、内部だけでの使用を前提としたアプリ。 以下の3)でも説明するがPrivate Appでは「Embedded SDK…

【Elasticsearch】5.x系でElasticsearch-headを使う時の注意点

既に色んなサイトにも載っているが、 5.x系でElasticsearch-headを使用する場合は、プラグインとしてではなく 1つのスタンドアローンサーバとして使用する事になる。ローカル環境で使用するため、 公式サイトの説明通りに、まずはインストールする。 環境設…

【Go】作業効率アップ!ファイル監視 -> 自動コンパイル -> 自動実行の完全自動化

開発時に、以下のような工程を繰り返している場合、①ファイル編集 ②「go run」または「go build」して実行開発効率が落ちる。 LivereloadのようなことがGoでも出来ないか調べてみたら まさにぴったりのパッケージがあった。GitHub - codegangsta/gin: Live r…

【Go入門】さくらVPS(CentOS)にGoをインストールしてみた。

1)yumでインストール $ yum install epel-release $ yum install golang 2)環境変数「GOPATH」の設定 Goのプロジェクトを作成したり パッケージをインストールするための起点になる GOPATHを設定する。 $ cd ~ $ vi .bash_profile # .bash_profile expor…

【Go入門】Echoを使ってみた - Webフレームワーク

1)Echoフレームワークの取得 ※(現時点で取得したバージョンはv3.2.1) # お決まりの「go get」 で取得 $ go get github.com/labstack/echo # プロジェクトディレクトリの作成&移動 $ cd $GOPATH/src $ mkdir sample $ cd sample 2)Echoを使ったページ…

【AMP】スマホページが要らなくなる?WordPressとの連携方法

AMPとは、「Accelerated Mobile Pages」のことで GoogleとTwitterが協同で策定したプロジェクト。詳細については、以下のサイトさんがよくまとまっている。qiita.comAMPについて検索してみると AMPは「カルーセルのみに表示される」のように 書いているサイ…

【Wix】使う前に知っておきたい!WixとWordPressの違い

以前の記事にも書いたとおり、 WixはHTMLやCSSなどの技術を知らなくても 簡単にサイトが作成できる。thoames.hatenadiary.jpこの記事では初心者の立場から見た WixとWordPressの違いについて解説するが 最初に結論を書くと、以下の通りになる。 Wix WordPres…

【Wix】Wixを使うべきただ1つの理由と、最適なプラン選択

いきなりだが、Wixを使うべきただ1つの理由。それは下記の動画を見ていただければ、分かりやすいが、 「専門的な知識(HTMLやCSSなど)を知らなくても 簡単にホームページを公開できる」という点にある。WordPressなどで自分でサイトを作ると 更新作業やセ…

【Elasticsearch】設計時のポイントについて

設計のポイントについては 以下のサイトさんがよくまとまっている。dev.classmethod.jp他には2.x系の場合 string系のフィールドには「not analyzed」を設定できないかを考慮する。 こっちのほうが性能が良くなるらしい。またフィールドの自動追加機能をオフ…

【Elasticsearch】初心者用。良さげなチュートリアルや勉強方法について調べてみた

いろんなサイトを拝見させていただいたが 多くのサイトで以下のサイトさんを紹介しているケースが多い。code46.hatenablog.com上記のサイトさんでは以下のデータセットを使い Elasticsearchでの検索方法について言及している。github.comただこのデータセッ…

【Elasticsearch】データをElasticsearchに入れる方法について調べてみた

多くのサイトで以下のデータセットを使っているケースが多い。github.comこの記事ではこのデータセット使用させて頂き データをElasticsearchに入れる方法について解説する。調べてみたところ、データの注入方法としては 以下の方法があるようだ。 River系プ…

【Elasticsearch】活用例・用途について調べてみた

調べてみた感じだと以下のような用途で使用されている。 検索レスポンスの向上 ログ解析・管理 Webクローラとして使用 実践的な活用例としては以下の例が、素晴らしいと思う。 企業・業界情報プラットフォームSPEEDAにおけるElasticsearchの活用 from Akira …

【Elasticsearch】爆速検索!WordPressとの連携方法

つい先日、「WORDCAMP KYOTO 2017」の 「WordPressにElasticsearchを連携してみた話」という動画を拝見させて頂いた。 WordPress検索のデフォルトではインデックスが効かない「LIKE検索」を採用しているため、記事が増えたときに検索がどうしても遅くなって…

【WordPress】サッっと作成!設定画面用のフレームワーク

WordPressでテーマやプラグインで設定画面のUI作成するときに スクラッチで作成しようとしている方へ。 自分は、あるプラグインのソースを読んでいて 設定画面用のFrameworkがあることに気づいた。 以下のサイトあたりが詳しそう。 www.wpexplorer.com wpcru…

【Elasticsearch】概要について理解する

Elasticsearchが何かをネットで調べるとよく「全文検索エンジン」という言葉を 目にするかと思うが、正直、自分の場合はよくわからなかった。 このページでは、Elasticsearchの概要について解説する。 全文検索エンジンとは? Wikipediaによると以下のように…