ECのウェブ担当者のメモ

ECサイトを運営管理している、WEB担当プログラマのメモ

スポンサーリンク

Rails の ELB ヘルスチェック用のアクションを設定する

AWSのELBのヘルスチェックをクリアするために、設定を追加します。 {result: 'ok'} を 返すだけの至って単純な仕組みです。 コントローラーを作成 rails g controller elb health_check elb_controller.rb class ElbController < ApplicationController def …

(/Library/Developer/CommandLineTools), missing xcrun エラー の対処方法

MacのOSをアップデートして、gitのコマンドを使おうとしたら、以下のエラーが発生しました。 xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun X…

Your bundle only supports platforms ["x86_64-darwin-20"] but your local platform エラー

capistrano で deploy したら以下のエラーが発生。 bundle stdout: Nothing written bundle stderr: Your bundle only supports platforms ["x86_64-darwin-20"] but your local platform is x86_64-linux. Add the current platform to the lockfile with `…

Rails の graphql を サブディレクトリのパスで運用する

/api/graphql とか /admin/graphql とか /api/graphiql とか のパスでgraphqlするための router.rbの設定です。 Rails.application.routes.draw do namespace :api do if Rails.env.development? mount GraphiQL::Rails::Engine, at: '/graphiql', graphql_p…

RDS Proxy が PostgreSQL 12 のサポートを開始したらしい

RDS Proxy が PostgreSQL 12 のサポートを開始したらしいです。 https://aws.amazon.com/jp/about-aws/whats-new/2021/11/amazon-rds-proxy-supports-postgresql-major-version-12/ RDS のバージョン上げすぎて RDS Proxyに対応していないという状況が続いて…

AWS CLIを使って ファイル名指定してS3内のファイルを削除する

実行するコマンドは下記のようになります aws s3 rm --recursive s3://my.bucket.com/logs/ --exclude '*' --include 'log-*' s3://my.bucket.com/logs/ my.bucket.com バケットの logs/ ディレクトリを対象にする。 --recursive 指定のディレクトリ内または…

AWS ELBでメンテナンス(503)画面を表示する

awsのelbだけで、メンテナンス画面を表示させる方法です。 elbのルートの条件は下記のようにしています。 条件やレスポンスなど 適宜調整してください。 パス * レスポンスコード 503 Content-Type text/html レスポンス本文 <html> <head> <title>メンテナンス作業中です。(50</title></head></html>…

Local開発用に スタンドアローン版 graphql playground を インストールして使う

aws Lambda の serverless で graphqlのAPIサーバーを開発しているけど、 コンソールからこんな感じのコマンド叩くのに辛みを感じできたので curl http://localhost:3000/local/graphql -X POST -H "Content-Type:application/json" -d '{"query": "query {u…

homebrewで入れたnodenvのバージョンアップ

nodenv で nodenv install -l したけど、一覧に該当の新バージョンがないので、nodenvをバージョンアップしたいときの話 下記を実行する! brew upgrade nodenv node-build これで無事に最新バージョンが一覧で確認できました。 関連記事 marketing-web.haten…

brew update でエラー

mac

brew updateしたら下記のようなエラーが発生 Error: homebrew-core is a shallow clone. homebrew-cask is a shallow clone. To `brew update`, first run: git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow git -C /usr/…

Shopify のテーマを Theme Kit で作るための環境構築

Shopify のテーマを Theme Kit で作るための環境構築です。 本当に最初の最初 Macに Theme Kit を install 公式 shopify.github.io brew tap shopify/shopify brew install themekit インストールの確認 theme help Usageが表示されればinstall 成功。 Compl…

Railsからvueへpropsへデータの受け渡し方法

下記の例では、Rails側のテンプレートで items/show.html.slim の id="recommend-category" の dataに code と item-group-codeを設定しています。(ケバブケースが良い様です) items/show.html.slim #recommend-category(data-code="#{@item_group.code}" da…

Rails x Vue x Graphql x webpackerの IE11対応

自分用のメモ Graphql (Apollo) の実行に 下記が必要。 たぶん fetch するため isomorphic-unfetch yarn add isomorphic-unfetch app/javascript/packs/application.js に下記を追加 import "core-js/stable"; import "regenerator-runtime/runtime"; import…

key must be 32 bytes | ActiveSupport::MessageEncryptor

Rubyをバージョンアップしたら key must be 32 bytes と怒られました 下記の様な複合化の処理が合った時に、 def self.decrypt(password) secret_key = 'your-key_1234567890123456789012345678901234567890' ActiveSupport::MessageEncryptor.new(secret_ke…

undefined method `raise_in_transactional_callbacks=' エラー

Rails のバージョンアップ(5.0 => 6.0)したら、下記のエラーが発生しました。 ERROR NoMethodError: undefined method `raise_in_transactional_callbacks=' for 対処方法 config/application.rb の下記をコメントアウトしたらエラー出なくなりました。 - co…

Rails の Activerecordで is null かつ empty をselect したい時

Rails の Activerecord で is null かつ empty(空文字)でセレクトした時。 結論は以下です。 User.where(name: [nil, '']) そうすると SELECT users.* FROM (users WHERE users.name = '' OR users.name IS NULL) のようなSQLが発行されます。 最初は User.w…

Rails x Vue 環境に Buefyをinstall する

yarn で buefyをinstall $yarn add buefy app/javascript/packs/application.js に下記を追加 import Vue from 'vue' import Buefy from 'buefy' import 'buefy/dist/buefy.css' Vue.use(Buefy) 以上です 参考サイト buefy.org 関連記事 marketing-web.haten…

MacでHeroku cli をインストールする。

mac で heroku-cli をインストールします $ brew tap heroku/brew && brew install heroku インストール完了後 $ heroku -v をして、下記のようにversionが返ってくれば成功です。 heroku/7.35.1 darwin-x64 node-v12.13.0 devcenter.heroku.com 関連記事 プ…

ActiveRecoredのmigrationでdrop tableをする

ActiveRecoredのmigrationを使ってdrop tableをする場合のサンプル 一様中身は空になってしまうが、rollbackで戻せるようにしている。 class DropAdminUsers < ActiveRecord::Migration[5.0] def change drop_table :admin_users do |t| t.string :name, nul…

gitでマージ済みのブランチを全て削除する

Git

リモートブランチの削除 git branch -r --merged master | grep -v -e master -e develop -e staging | sed -e 's% *origin/%%' | xargs -I% git push --delete origin % ローカルブランチの削除 git branch --merged master | grep -vE '^\*|master$|stagin…

javascriptで配列から空白とかnullとかfalseを取り除く

javascriptで配列から空白とかを取り除く方法です 下記のような 配列があった場合 let list = ['1', null, 2, false, "3", 0, ''] 下記のように filter すると list.filter(v => v) 結果は ["1", 2, "3"] となります。 関連記事 marketing-web.hatenablog.co…

Rubyの消費税計算の話

最初、金額に消費税かけて切り上げすればOKでしょと思って (price * tax).ceil をしたところ (400 * 1.1).ceil の結果は、 441 となります。 くそ、、、 こんな親切な数字なのになんで 440 にならない、、、 くそ、、、 で実際 400 * 1.1 すると 440.0000000…

RubyMineで間違ったファイルタイプを割り当ててしまった時の変更方法

RubyMine で aaaaaa.rb というファイルだけど、RubyではなくText を間違って割り当ててしまった時の設定の修正方法です。 Preference > Editor > File Types を表示 Text を選択すると、Registed Patternsに aaaaaa.rb があるはずなので これを削除するとaaa…

BtoC向け 後払いサイト比較

NP後払い ネットプロテクションズの後払いサービスNP後払い www.netprotections.com プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安 Aプラン 5.0% 0円 1取引ごとに190円 - Bプラン 4.4% 5,000円 ↑ 901,000円以上 Cプラン 3.6% …

Font AwesomeをVue.jsにインストールして使う

Vue.jsにFont Awesomeをインストールして使います。 インストール 下記のパッケージをインストールします。 $ npm i --save @fortawesome/fontawesome-svg-core $ npm i --save @fortawesome/free-solid-svg-icons $ npm i --save @fortawesome/vue-fontawes…

Vue Nativeをインストールしてみたら想像以上に簡単だった!

これまで、React Nativeが気になりながらも、学習コストを考えてVueを選択していたのですがVue Native が登場したんですね! 嬉しい状況です。 vue-native.io 早速、インストールから、最初の起動までを試してみました。 パッケージのインストール vue-nativ…

vue cli で Github の graphql (API)を vue-apolloを使って叩く

vueのインストール vue init webpack my-project 何個か質問されるので、回答しながら進んでください。 インストール終わったら、 パッケージをインストールして、起動! cd my-project npm install npm run dev vue-apolloのインストール vueからgraphqlを…

Nuxt.jsをインストールする

Nuxtをインストールしていきます。 今回は、nuxt_testというプロジェクト名で作るようになっていますが、 適宜変更してください。 また、vue-cliを使っていますが、 インストールしていなければ、下記でインストールすることができます。 npm install -g vue…

Javascriptで置換する

Javascriptで置換(replace)する時の注意点 2018-05-29 を 2018/05/29 に置換したい時に replace 使えば OKだと思って '2018-05-29'.replace(/-/, '/') としたら 2018/05-29 となりました。 先頭しかかわらないんですね。 replaceAll したい 全部置換したい時…

JSON形式のWEB APIをすぐにホスティングできるサイトを作りました

APIって便利ですよね。 ここ最近。色々なサービスでAPIが提供されていて JSONを扱う機会が増えて来ていると感じる今日この頃です。 そんな時代に開発をしていると、ちょっとスタブがわりのJSONが欲しいんだけどー っていう、フロント系エンジニアは多いんじ…