サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
参議院選挙2025
qiita.com/yuku_t
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
TL;DR AdequateRecordはActiveRecordの機能の名前 新しいgemとかでは無い #find #find_by そして #find_by_XXXを2倍に高速化する 引用: AdequateRecord Pro™: Like ActiveRecord, but more adequate | Tenderlovemaking 内部的にはクエリ呼び出しの度にActiveRecordが生成するオブジェクトをキャッシュする 対象を#findなどに限っているのは、生成されるオブジェクトや条件が単純だから Rails 4.2.0 beta1 リリース 先日Rails 4.2.0 beta1がリリースされて、そのリリースブログの中にAdequate Recordなるものが ActiveRecordの動作 ActiveRecordの#whereなどを使ってDBからレコードを引っ張っ
久々にunite.vimをアップデートしたらfile_rec/gitなるsourceが追加されていた。ドキュメントによるとfile_rec/asyncよりgitディレクトリでは高速に動作するとのことだったので、カレントディレクトリに .git ディレクトリがあるかどうかで切り換えるようにした。確かに若干速くなったような...? NeoBundle 'Shougo/unite.vim' function! DispatchUniteFileRecAsyncOrGit() if isdirectory(getcwd()."/.git") Unite file_rec/git else Unite file_rec/async endif endfunction nnoremap <silent> <C-p> :<C-u>call DispatchUniteFileRecAsyncOrGit()
# bundle cd [gem] _orig_bundle=$(which bundle) function bundle() { if [ "$1" = "cd" ]; then local gem if [ "$2" ]; then gem=$2 else gem=$($_orig_bundle list | awk '{ print $2 }' | percol) fi cd $($_orig_bundle show $gem) else $_orig_bundle $* fi } Gemfileがあるディレクトリで実行するとpercolが起動して、選択したgemのディレクトリにcdできる。(pecoを使ってる人は適宜置き換える) デモ 背景 githubのリポジトリを簡単に取ってこれるghqというツールとgem-srcを組み合わせるとbundle install 時に自動的にgh
Resqueのキューがどんな感じになっているのか可視化したくなったから、Mackerelを使ってみた。 MackerelにResqueサービスとDBロールとRedisが動いているホストを追加して、下記のようなスクリプト書いた。REDIS_HOST PORT MACKEREL_API_KEY HOST_IDはよしなに設定する。 # !/bin/bash redis='redis-cli -h REDIS_HOST -p PORT' timestamp=`date +%s` apikey=MACKERL_API_KEY hostid=HOST_ID json='' sum=0 for name in `$redis SMEMBERS resque:queues` ; do depth=`$redis LLEN resque:queue:${name}` sum=`expr $sum + $de
TL;DR MVCもレイヤで捉えて関係性の設計をするといいのでは 普通のRubyオブジェクトを積極的に使いたいですね 「パーフェクト Rails」に期待しましょう 長くなって面倒くさくなり、途中から手抜き感が半端ないですが許してください この記事の位置付けなど 7 Patterns to Refactor Fat ActiveRecord Models - Code Climate Blog [翻訳] エリック・エヴァンスのドメイン駆動設計 エンタープライズ アプリケーションアーキテクチャパターン これらの参考文献を踏まえてRailsアプリケーションのリファクタリングをしていて、だいぶ方向性や考え方がまとまってきたので、これからチームに合流する人を想定読者に、Qiitaがどんな感じで作られているのかを文書化したものです。(参考文献の一覧は記事の最後にあります) 内容的には文献[2,3]を踏
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Boxen使わなくても許されるのは2012年までだよね を書いたのも今は昔、1年間の運用の末にこの度Boxenを卒業しました。なぜBoxenをやめたのか、やめて今はどうしているのか、といった話を書きます。 Boxenのつらいところ ここで述べるBoxenの問題点の大部分は筆者のBoxenおよびPuppetに対する理解の低さが根底にあります。間違った使い方をしている可能性は十分にあり、適切に使っていればこのような問題は発生しないのかも知れません。しかしながら、深い理解がなければまともに使えないというのもどうかと思いますのでつらつらと並び立
特定のソフトウェアを使っていると内部的に sudo を実行しており、毎回パスワードの入力を要求されて面倒!ということがあると思います。例えばVagrantのsynced_folder機能をnfsで使っていると vagrant up の度にパスワードを入力しなければなりませんが、正直面倒ですね。 というわけでパスワード入力を省略したいです。でもなんでもかんでもパスワード無しで sudo できてしまうのは怖いので、特定のコマンドだけパスワード無しでも sudo できるようにする方法の解説です。 免責 ご自身の責任の元に信頼できる相手だけに sudo 権限を渡すようにしてください。 sudo しているコマンドを把握する まずはパスワード入力を求められた際に、ソフトウェアの内部で実行しているコマンドが何なのか知らなければいけません。 それを知るにはシステムログを見るのが手っ取り早いです。環境により
:Gblame で git-blame の結果を表示できますが、ある行が変更されるその前の状態を表示したい場合は、その行にカーソルを移動させて ~ を押します。すると、その行を変更したcommitのsha1が012345だったとすると、 git blame 012345^ -- file を実行したような結果がvimdiffで表示されます。 ちなみに ~ は [count] を受け取るので 3~ は git blame 012345^^^ - file になります。また - は git blame 012345 -- file です。便利 tips: 空白差分だけの変更を無視する そもそも ~ が必要になる場面というのは、blameで得られた差分がインデントの変更みたいな、実質中身のない変更の場合のことも多いです。 git-blame は -w オプションでそういった空白のみの変更を無視し
追記 Capistrano 3.1からは何もしなくてもprevious_revisionとcurrent_revisionが set されるようです。 capistrano/capistrano#32920c1 Capistrano2の頃はデプロイするとそのときのリビジョンがREVISIONという名前のファイルに書きだされていた(ような気がする)のですが、Capistrano3ではデフォルトでそういうことをやらなくなったみたいです。 下記のタスクを追加するとファイルに保存されるようになります。 set :revision_file, 'REVISION' namespace :deploy do task :save_current_revision do on role(:app) do within repo_path do set :revision, capture(:git, :
TL;DR go get は Ruby でいう gem みたいなもん $GOPATH は自分の環境に合わせて好きに指定してよい 例えば $HOME/.go とか $HOME/go とか 好きに設定してもいいけど、一度設定したらそれをずっと使い続けた方がたぶんいい 現在では、GOPATHを明示的に設定しない場合は自動的に設定される。 Wikiより If no GOPATH is set, it is assumed to be $HOME/go on Unix systems and %USERPROFILE%\go on Windows. ことの始まり homebrewでGoをインストールしたらのっけから Go 1.1 から go get コマンドは $GOROOT をパッケージダウンロード先として使わなくなりなりました。 go get 使うには $GOPATH が必要です。 と言われて、
# Capistranoの設定を読み込む。おまじない require 'capistrano/setup' # デプロイフレームワークを読み込み require 'capistrano/deploy' # `lib/capistrano/tasks' に定義されたタスクを読み込む Dir.glob('lib/capistrano/tasks/*.cap').each { |r| import r } このcapistrano/deployが内部でcapistrano/frameworkを読み込みます。つまり、Capistrano3のデプロイ機能には2つのレベルが存在しています。 capistrano/framework もっとも汎用的なデプロイフレームワーク。デプロイの開始、コードのアップデート、システムの公開、デプロイの完了、という流れを定義しているだけで具体的な処理は一切含まない。フッ
Devtools Terminal Railsに限った話じゃないですが、開発時に立てたサーバのログを見ながら作業することがあると思います。そんなときはDevtools Terminalが便利です。 この拡張をインストールするとDeveloper ToolsにTerminalタブが追加されます。で、このタブの中身が端末のエミュレータになっていてるので、その画面の中で tail -f とかやっとくわけです。Devtools Terminal自体にはタブ機能がありませんが、その中でscreenとかtmuxを起動してやれば大丈夫です。 無論こんなことをしなくても横に端末を並べて置いてそこで表示すればいいといえばいいのですが、画面の横に必ず固定されている、というのが嬉しい感じです。
次のページ
このページを最初にブックマークしてみませんか?
『@yuku_tのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く