edy hub

プログラミングやライフスタイルについて書き綴っています

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

FlutterのサンプルAppのコードを読んでみる

はじめに Flutterのアプリのセットアップが完了したら、AndroidStudioからアプリケーションを新規作成します。 File > New > New Flutter Project...を選びます。 一番左にある「」を選択すると自動でmain.dartを伴ったサンプルアプリが誕生しました。 New F…

ActiveRecordのenumで定義した要素を元にセレクトボックスを作成する

はじめに ActiveRecordのenumで定義した要素をセレクトボックスを作りたいときの用法用量です。 ※gemを追加しても同等のことができますがコード量も少ないので自作で進めます。 i18n(Internationalization)について モデルのattributeのi18nは通常、'activ…

【Vue.js】v-onディレクティブに引数を渡す

vue

v-onディレクティブに引数を渡すのは非常に簡単です。 引数を渡す前 <html lang="ja"> <head> <meta charset="utf-8"> <title>Vue.js App</title> <link rel="href + exp" href="main.css"> </head> <body> <div id="app"> <p>現在{{ number }}回クリックされています</p> <button v-on:click="countUp">カウントアップ</button> </div> </body></html>

awkコマンドを理解していく

awsとの接触 はじめてawkコマンドと出会ったときに、衝撃を受けた。 意味分からんと。 でもこれを書く先輩エンジニアに憧れも抱いた... mail_users=(`awk 'F==0{a[$1]=$2;next}{print $1 "\t" a[$1] "\t" $2}' <(cat employee.csv | awk -F',' '{print $1" "…

シェルスクリプトの基礎と便利コマンド集

変数 # イコールの両端にスペースを空けない str="hello" # こういう書き方ができる echo $srt # =>hello echo "$str" # =>hello echo "${str}" # => hello # 文字列の連結 # +は要らない echo $str$str # hellohello # スペースはそのまま反映される echo "…

シェルスクリプトのtrap

trapは シェルスクリプトの実行結果に関わらず、 trapコマンドを後処理として実行させることができるようになります。 trap 'コマンド' シグナルリスト ※実行中のシェルスクリプトに対して送出されたシグナルは、trap コマンドを使用することで捕捉すること…

RailsのCarrierwaveをコンソールで試してみる

はじめに Railsで画像をアップロードする際に、gem 'carrierwave' を使用しています。 github.com コンソールで画像をアップロードする 例の如く、コンソールを立ち上げます。 rails c uploder = HogeUploader.new image_file = Pathname.new(Rails.root.joi…

railsで任意のURLにJSONをPOSTする方法

特定のURLをSlackのWebhookとします。 def post_man url = 'https://hooks.slack.com/services/xxxxxx/yyyyy/zzzzz' content = { text: 'This post is from Ruby on Rails', icon_emoji: ':ghost:' } uri = URI.parse(WEBHOOK_URL) http = Net::HTTP.new(uri…

Railsでモジュールを作ってインクルードして使うまで

特定の処理をモジュール化したい Railsで独自実装などを記しておく、自前のモジュールを使いたい場合が誰にでもあると思います。 その際の準備など書き記しておきます。 方法 下記に則って進めましょう 命名規則に沿ってモジュールを作る app/libにそのモジ…

docker-compose upしたときに「A server is already running.」でサーバーが立ち上がらない問題

何が起きたか? すでに動いているプロセスの影響でサーバの立ち上げがうまくいかない。 A server is already running. Check /myapp/tmp/pids/server.pid. 解決方法 docker-compose up --buildする前にプロセスを消すようにした。 $ rm -f tmp/pids/server.p…

Rspecを書く時に念頭においておきたいことのメモ

この記事の役割 全体像をメインにメモをしていきます。 各論も含むかもしれませんが、ボリュームが増大した場合は別記事に切り分けます。 体系的なまとめ 参考: RSpecを綺麗に書くための基本Rule - Qiita この記事からの学び ○命名規則 「AAメソッドは、BB…

Puppeteerでスクレイピングをする

はじめに const puppeteer = require('puppeteer'); ファイル内でpuppeteerを読み込む ファイル読み込み ファイル操作を行うライブラリ const fs = require('fs'); node.jsはShift-jisをサポートしていないので、通常の方法で読み込むと、文字化けしてしまう…

Vim便利コマンド[削除編]

vim

Vimの削除コマンド集 1文字削除 x 単語削除 dw 行削除 dd 指定行数削除 n(数字)dd 例:3dd → 3行削除 カーソルから行末まで削除 D 文字置換削除 "banana"という単語を削除したい時 :%s/banana//g カーソル上の単語を削除 diw クォーテーションの内部を削除…

フロントエンドのあれこれ

rgba 例えば、background-color: rgba(0, 0, 0, 0.85); という記述があったとする。 最後の0.85はアルファチャンネル=不透明度を表す。 つまり、 rgba(0, 0, 0, 0.85) とは、#000と同じ真っ黒を、不透明度85%の半透明にする、ということ。 vhとvw vhは、 vi…

cronの実行タイミングのさまざま

結論、この2記事が分かりやすかった。 https://oxynotes.com/?p=6912oxynotes.com qiita.com

営業について

はじめに 社内勉強会で営業担当から必勝方法を学んだ 内容 Q&Aでトークセッション形式 営業のスタンス 営業のNo.1は狙っていたか? YES 何をしていた? 社内のすごい人にひたすら聞き込みをした 的確なレスポンスを返してくれる人にひたすら聞いていた 誰が…

Railsのフォームでenumを用いた複数個のラジオボタンを生成する

はじめに enumの値ごとにラジオボタンを作るのが面倒だったので、どうにかまとめられないかというのが起点。 collection_select_boxみたいなものがあればという淡い期待のもと調査をしてみます。 元のコード = form_for object do |f| = f.radio_button :sta…

bundle install時にmysql2のインストールでエラーになる

はじめに bundle installすると、 Fetching mysql2 0.5.2 Installing mysql2 0.5.2 with native extensions Gem::Ext::BuildError: ERROR: Failed to build gem native extension. // 中略 To see why this extension failed to compile, please check the m…

Rubyのバージョンを2.5.3に上げる〜Docker編〜

はじめに Dockerfileを編集 rubyのバージョンを2.5.3に変更 $ docker-compose up --build はいエラー bundlerのバージョンがよろしくないみたいですね。 bundlerのバージョンを変更 - gem 'bundler', '1.15.4' + gem 'bundler', '1.17.2' Gemfile.lock内の古…

Redis ObjectsをRailsで使ってみる

はじめに これはRedis導入後に、Redis Objectsの使い方を学ぼうと思った一人の若者の備忘録です。 GitHubのリポジトリを参考にしています。 GitHub - nateware/redis-objects: Map Redis types directly to Ruby objects Gemの導入 はじめに、Gemfileにgemを…

SQLで重複した値を取り除いた集計を行いたい

SQL

結論 DISTINCTを使います。 SELECT COUNT(DISTINCT name) FROM users COUNTの箇所はAVG(平均)、SUM(合計)なども充てることが出来ます。

Rubymineの「typo」警告を特定のワードの場合に無くしたい

どんなケース? これはtypoに見せかけて、プロジェクト内では列記とした単語なんじゃ!という場合。 毎回警告が出るとうざいですよね。 解決方法 該当ワードで右クリック すると、Spellingという項目が出てきます(自分の場合は、トップに出てきました) さ…

【エンジニア向け】情報収集用サイトまとめ(完全個人版)

はじめに 普段自分が触れる情報の鮮度を上げたいと思った。 鮮度重視 slacklist slacklist.info slack-list-ja bokuweb.github.io イベント・勉強会系 geechs geechs-magazine.com

Goのセットアップを行う

はじめに 普段は業務でRubyを使っているが、多言語に対応して一丁前のエンジニアになるべく、Goの学習をしてみる(週末限定) リファレンス このサイトが非常に役に立った。 cuto.unirita.co.jp Goのインストール 自分はMacを使用しているため、homebrewでGo…

Railsのテーブル定義書を吐き出したい

はじめに プロジェクトメンバーにエンジニア以外の関係者がいるときに、テーブル定義書を用意することになった。 テーブル定義書とは? 方法 下記を参考にrakeタスクを作成する。 gist.github.com とりあえず動かしてみる lib/tasks内にrakeタスクを作成する…

Railsのベストプラクティスを教えてくれ

はじめに こちらの記事は現場でRuby on Railsを用いている筆者が、独断と偏見でRailsのTipsをまとめたサイトを収集する記事です。 基本的に「まとめのまとめ」のスタンスを取ります。 つまり、私の備忘録です。 1. Rails Best Practices 一発目から海外の英…

Rubyの基礎を改めて学習し直してみた(インスタンス)

これは何か? Rubyの文法を復習し直す場 RubyとRailsを学習する方に向けた記事 インスタンス変数 インスタンス変数とは、オブジェクトが抱えている変数のこと。 例えば下記のようなrubyファイルにUserクラスがあったとする。 class User end ここで、rubyの…

Railsで使えるメソッド確認用のメソッド

これは何か? Rubyで定義されていないメソッドが存在した時に、No Method Errorが吐かれる。 それを未善に防ぐために、メソッドの存在を予めチェックする。そのための備忘録。 ローカル変数が定義されているか 前提 定義されていないローカル変数は使おうと…

MySQLのデータをダンプする〜mysqldumpコマンド〜

はじめに エンジニアとして、現場に入るとdumpファイルをもらうことがあります。 特に入社直後は開発環境の構築からスタートすると思うので、まず最初にdump.sqlっぽい名前のファイルを付与されるんじゃないでしょうか? しかし、その後dumpファイルをただ貰…

エンジニアとしてブログを書いてみる

はじめに 都内のベンチャーでWebエンジニアとして春から社会人デビューします。 今後は技術的なアウトプットや、エンジニアとしての学び、現場での経験による具体的なエピソードなどを記していけたらと思います。 まずは1週間に1投稿ペースでゆるりと始めた…