mozyのかきおき

mozyの読書感想文や思考置き場

v-forで回したループ内で v-if 判断したい時って

 filterBy とか使えば簡潔にかけたのか

v-for で回して v-if で判断するってコードってままあるけど、
v-for内部は純粋なjsであろうから、v-ifではなくて filterBy 使えばよかったのかね。学んだ。

条件に一致したオブジェクトのみ表示するコード例

<tr v-for="object in objects | filterBy search_word in 'name'">
<td>{{ object.name }}</td>
</tr>

追記

もしくは、comptued を使うことも考えられるか。

<div v-for="(item, index) in myList"></div>

{
comptued: {
  myList () {
    return this.originArr.filter(elm => ... )
  }
},
data () {
  return {
    originArr: [...]
  }
}

 

オレオレrails環境で、各種セットアップ時に出やすいエラーと対処法集

エラー忘備録をQ&A形式で

(ただし過信はしないほうがいい、ログは熟読、ゼッタイ)

Q. make init の際に nokogiriなど でコケるなぁ

  • rubyのversionを確認しよう。.ruby-version に指定があることが多い
  • ディレクトリごとに環境を切り替えられるdirenv
  • rbenvなどを使う人はxxenv系をまとめられる、anyenvを使うと設定が楽だったりする

設定例

~/.direnvrc

use_ruby() {
  local ruby_root=$HOME/.rubies/$1
  load_prefix "$ruby_root"
  layout_ruby
}

それぞれのプロジェクトのディレクトリ以下で direnv edit . を叩いて /.envrc:

use ruby 2.3

などとすると、ディレクトリ移動に応じてrubyバージョンが切り替わる。 便利〜。

参考

https://github.com/direnv/direnv/wiki https://github.com/riywo/anyenv

Q. mysql2周り でコケるなぁ

  • Docker立ち上がってるかい?
  • docker ps とかで確認しよう
  • rubyバージョンはあってるかい?

rbenvをすでに使っている環境でanyenvを使い始める

タイトルの通り

こんなときは、すでにインストールしてあるバージョンのRubyをコピーするとわざわざ再度インストールしなくて済むのでグッド

$ cp -r ~/.rbenv/versions/* ~/.anyenv/envs/rbenv/versions/*

phpenvなり他のものも同様にコピーしておくといいと思う。

ついでに

コピーに時間がかかることもあると思うので、まじで動いてるんかいなって気になるときはtopでもいいしvm_statを使って確認すると便利かも
$ top, $ vm_stat 5 (Macは _ が入るのよね😅)

Nuxt.js の翻訳に参加したぞ

経緯

GitHubで以下のような募集を発見した。
最近個人的にNuxt.jsを触りたいなと思っていたので、翻訳も勉強になるし、いい機会だったので参加することにした。
ドキュメント翻訳 2018 秋の陣 · Issue #5 · vuejs-jp/ja.docs.nuxtjs · GitHub

やっていくと

自分は、英->日、中->日、(ちょっとだけ西->日) などで各種ドキュメントの翻訳を請負でやっていたりするけれども、
自分がガッツリと触ったことのない技術の翻訳に参加するのは初めてだったため、内容をキャッチアップをしながら進める必要があった。
その結果、Nuxt.js 全般について触って学ぶことができたためめっちゃ勉強になった。
すごい。一石二鳥。最強。みんなやるべし。
今の時期はHacktoverfestの時期でもあるし、日本語翻訳でも、もちろんOSSに大きく貢献できるしやってみるといいと思いますよ。

結果

マージされたぜ! やったね! 🎉
ja: Translate ja/examples/auth-external-jwt.md by MozyOk · Pull Request #837 · nuxt/docs · GitHub

でも、うち、英語できへんし、技術もわからんのや。。

ってな人は、英語ができないから、その技術が分からないからやらない。ではなく、できないし分からないからこそとりあえずやってみるという精神が一番重要だったりするのかもなぁって思います。
このことに関しては、
結城さんの素晴らしい日記 「「もっと学んでからにしよう」と思わなくて、本当によかった」を読むといいと思います。 特に、日々新しいことに取り組んでいく必要のあるエンジニアや研究者、プランナーなど、
昨日より楽しい世界をちょっとずつ作っていく全ての人はとても勇気づけられると思います。

https://mm.hyuki.net/n/n9c65b161bd8a

「もっと学んでから書き始めよう」などと思わなくてよかった。
「すでに優れた本がたくさん出ているから、自分はもう書く価値がない」と思わなくてよかった。
うまずたゆまず、自分にできることをできる範囲でいいから、手抜きをせずに、こつこつと続けてきて本当によかった。

git-bug を使ってバグ管理しよう【めっちゃ便利】

要約すると

git-bug っていうバグレポートを管理するためのツールがある。
これを使うとプラットフォームによらずgit環境だけでバグの管理ができるのでめっちゃ便利。
GitHub - MichaelMure/git-bug: Distributed bug tracker embedded in Git

使い方

だいたい上のGitHubリポジトリの通り
Go get するだけ。(パスは通ってない人は要設定)
$ go get -u github.com/MichaelMure/git-bug
$ export PATH=$PATH:$(go env GOROOT)/bin:$(go env GOPATH)/bin

実際に使ってみる

まずは使えるコマンドを確認してみる $ git-bug --help f:id:mozy_ok:20181012003516p:plain

なるほど、追加するには、GitHubとは違って git-bug add コマンドらしい
試してみたところ、Vimが開いた。(設定によってエディタは変わるハズ)
f:id:mozy_ok:20181012003819p:plain

追加したバグをみるには、git-bug ls コマンドを叩く f:id:mozy_ok:20181012004112p:plain

WebUIで追加したバグをみることもできる。 f:id:mozy_ok:20181012005034p:plain

WebUIは裏でGraphQLを使っているようですね。
f:id:mozy_ok:20181012005748p:plain

まとめ

バグを発見した際に、ブラウザでGitHubを開いて〜Issue作って〜などしている間に、あれ細かい部分はなんだったけと、なってしまうことがあるので、こういうCUIで管理できるツールはめっちゃいいなと感じた。今後の発展に期待大。
あと、ToDoではないけれども、思ったことや感じたことメモをこの形式で残すのもいいかもしれない。
少しの間使ってみようと思った。

Laravel本を買ったぞ

買いました

Laravel本買いました。良本っぽいので、読み込んでいくぞ🤙  

 

経緯

最近、Laravelを触ることが増えて、PHPの良さとLaravelの悩む時間が少なくてすむフレームワーク設計にとても助けられている。  

個人的には、  

Railsは、型にはまったことなら超高速で開発できるが、型から外れると黒魔術化してツラみ  

Laravelは、作る前に設計をある程度考えておくと保守もめちゃくちゃ楽  

って印象なので、Laravel好きですね。

 

買った本

PHPフレームワーク Laravel Webアプリケーション開発 バージョン5.5 LTS対応 https://www.amazon.co.jp/dp/4802611846/ref=cm_sw_r_cp_api_816QBb95QW7QV

 

表紙もカッコいい。

f:id:mozy_ok:20180927010333j:image

【解決済】Docker buildでエラー

起きたこと

docker build -t image-name ./Dockerfile とビルドしようとしたらエラーが起きた.
unable to prepare context: context must be a directory: だとかなんとか。

解決策

なるほど。指定するDockerfileはディレクトリじゃないとダメとな
docker build -t image-name ./ として解決した。