Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

rescue_from で拾えない例外がある Rails が用意してくれている rescue_from は controller の外側で発生した例外を拾ってくれない。 例えばパラメータに不正なエンコーディングが含まれるときに、Rails は ActionController::BadRequest を例外として投げる。しかし、この処理は Rails の routing 層で行われているため rescue_from で捕捉することはできない。 そのため Rails の外で発生した例外を捕捉していない場合、ユーザには意図していないエラーページが見えている可能性がある。 Rails の外で起きる例外は exceptions_app で処理するのがお手軽 例えば config/initializers/exceptions_app.rb に以下のコードを書いておく(ErrorsControlle
構造体を定義して、それに対してメソッドを定義して、最後にその構造体をアロケートして初期化するNewなんとかという関数を用意する、というのを何の疑問も持たずに行っているならちょっと考えものだ。途中まではよいが、Newなんとかみたいなのは別に必須ではない。 メソッドとゼロ値 Goでは新しい値は「ゼロ値」で自動的に初期化される。ゼロ値は型ごとに違うが、数値なら0、文字列なら空文字列、ポインタやインターフェイスならnil、といった具合の値だ。構造体ならそれぞれのフィールドがゼロ値で初期化される。 メソッドはそのレシーバーの値のゼロ値に対して問題なく動くように書くほうがよい。構造体Tを割り当てて初期化する関数としてNewTみたいな関数を用意するのは、本当に初期化が必要なとき以外はやらないほうがよい。 なぜか、というといくつか理由がある。 NewTの代わりにnew(T)を使うようにすると、エクスポート
以下の3つで指定されているURLのみポストできる。 * Canvas URL * Website URL * App domainのサブドメイン One or more of the given URLs is not allowed by the Stream post URL security app setting. It must match the Website URL or Canvas URL, or the domain must be a subdomain of one of the App's domains. Read more about Login Security to learn more about app settings related to security.
概要 Vagrantで仮想マシンを作るまでの一連のファイルはデフォルトでCドライブに溜まる。 が、容量の少ないSSD+HDDの構成のPCなどで考えなしにVMを増やすとディスクがすぐなくなる。 ので、ディレクトリを変更する為の小ネタ。 デフォルトだと Vagrantのファイルは C:/Users/fktan5/.vagrant.d/ のように置かれる。 追加したBoxイメージなどはここに保存されている。 VirtualBoxのファイルは C:/Users/fktan5/VirtualBox VMs/ に置かれる。マシンのファイル・ディスクファイルなどを保存している。 方法 Windowsで実施。 VAGRANT_HOMEを環境変数として登録する。 Virtualboxの環境設定から一般→デフォルトの仮想マシンフォルダーでディレクトリを変更する。 試しにVMをVagrantで作り、ファイルが指
動機 git initしたりREADME.md用意したり、ってあたりをコマンド一発でサクッとやりたい もっと細かい事・丁寧な事をやりたければ好きな言語でコマンドラインツール作るとかすればいいと思う。その際の参考にでもなれば やること 以下をシェルで * README.md を作成する * CHANGELOG を作成する * LICENSE を作成する * .gitignoreを作成する * git initする * (後で必要に応じて)README.mdに各種ステータスバッジを追加する .zshrc, .bashrc あたりに設定追記 .zshrcとか.bashrcに下記を追記 function ghreadme() { account=$1 name=$2 cat <<EOL ${name} ========== ${name} is hoge huga. ## Getting Star
git stash list stash@{0}: WIP on develop: ... stash@{1}: WIP on develop: ... stash@{2}: WIP on feature/... stash@{3}: WIP on develop: ... stash@{4}: WIP on refactor/...
MacとUnity Free版を使ってZenrinさんの秋葉原上空をQueryちゃんがOculus DK2で飛ぶ、方法MacUnityOculusJapanOtakuCity はじめに タイトル長い!要するにそういうことです。 割と簡単にできるわりに、やはり最初は躓く箇所も多いので共有します。 各Version Mac: Mac mini Late 2012, 2.3GHz Core i7, 16GB Memory OS X 10.9.4 Unity 4.5.3f3 Free版 Unity Assets Japan Otaku City: draft(Aug 27, 2014) OVRAgent_0.4.1_20140823.zip Oculus DK2 Runtime: oculus-runtime_rev_1_sdk_0.4.1_osx SDK: ovr_sdk_macos_0.4.1
開発アカウントの凍結問題に対応したバージョンをリリースしました。 お手数ですが投稿画面のアイコン右クリック→削除を行ってから、再度アカウント認証をお願いします。 お手軽・お気楽・落書きクライアント さっと書いて即ツイート。 リサイズしたりファイルを保存したりアップロードしたり… そんな手間は必要ありません。
TravisCIのビルドの流れを知ろう! Githubから(.travis.ymlが配置されている)リポジトリをgit cloneする git cloneの際に、オプション--depth=50が付いています cloneしたリポジトリに移動する git checkoutしてコミットしたコードを取得する .travis.ymlに書いた環境変数はここで適用される キャッシュを使う場合、キャッシュを取得する 使用するRubyのバージョンを指定する before_installで定義したものが実行される キャッシュを使う場合、ここで追加される installで定義したものが実行される before_scriptで定義したものが実行される scriptで定義したものが実行される exitコードが0ならば成功、それ以外は失敗と判定される after_successまたはafter_failureで定義し
構成 ガイド はじめに カスタマイズ パッケージ作成 テーマ作成 パッケージ公開 貢献 詳細 はじめに このガイドはできるだけ早く使えるようにするための入門です。 また、このガイドはAtomの設定・テーマそして拡張をカバーしてます。 コマンドパレット Atomで一つだけコマンドを覚えるならcmd-shift-Pです。 cmd-shift-P を押したら現在開いている画面に関連した内容が列挙されます。 このコマンドは仕組みやキーバインディングを学ぶには一番いい方法です。 もっと詳しいことはキーバインディングのカスタマイズを参照してください。 基本操作 ファイル操作 Atomのウインドウはひとつのディレクトリが対象になります。もし、コマンドラインからatomのコマンドを実行するならパスは指定する必要はありません。 Atomは今いる作業ディレクトリにウインドウを開きます。作業ディレクトリはサイド
Python と matploblib によるデータ可視化についてはすでに pandas + matplotlib による多彩なデータプロッティングや pandas を利用してデータセットの可視化を素早く試行する、 matplotlib (+ pandas) によるデータ可視化の方法などでさまざまな方法を説明してきました。 今回はヒートマップを描くわけですが、その前にあらためで可視化の方法についておさらいしましょう。 配列からのデータ可視化方法のまとめ ここでのデータ可視化とは配列からなるポピュラーな図示をさしています。配列とは、複数の属性値を持ち、 1 つのデータが 1 つの行で表されるデータの形式です。 いろいろなバリエーションがありますが、主軸となる代表的な可視化方法をまとめます。 棒グラフ (bar) データの大きさの比較に適したグラフです。縦や横に描画する方法、積み上げる方法、複
Ruby SassはBootstrapとかコンパイルすると遅すぎて辛い Lessは速いけどインデントで書きたい(curly braceを書きたくない) StylusはBootstrapが公式にサポートしてない(個人的に使ったことない) .sassで書きたい。 環境 gulp 3.8.10 gulp-sass 1.3.2 2015/1/30更新。 node-sassのアップデートに伴ってgulp-sassのバージョンも上がり、以前と対策方法が変わっています。以前の内容は更新履歴を見てください。 普通に.sassを渡すとコケる g = require 'gulp' sass = require 'gulp-sass' g.task 'default', -> g.src './style.sass' .pipe sass() .pipe g.dest './' このままだとコンパイルできない。
動機 Ubuntu 14.04.1 LTSにおいてGraphvizで生成するPDFの中でSVGを扱いたい。 Pandoc+beamer+GraphvizでAWSの図を描くを実施した際に悩んだ点。 SVGをシェイプとして使おうとすると、OS X Lionではうまくいっていたものが、Ubuntuでは普通にapt-getでインストールしたバージョンだと以下のエラーになる。 これを回避したい。 $ cat k.dot digraph { a [image="elb.svg"] } $ dot -Tpdf k.dot > /dev/null Warning: No loadimage plugin for "svg:cairo" エラーの原因 Graphvizが扱えるファイル形式はdot -P | dot -Tpdf -o list.pdfで得られる. この結果と、うまくいっている環境(OSX Li
※ 以下で定義される「 pprint モジュール の pprint( ) 関数 を組み込んだ pp() 関数 」を print( ) 関数に渡すと、文字コード数字記号でない、ちゃんとした日本語文字列が出力される ( 参考ウェブサイト ) ( リンク ) 唯物是真 @Scaled_Wurm (2011-11-12)「Pythonで日本語関係のイライラ」 ( リンク ) Python による日本語自然言語処理 import re, pprint def pp(obj): pp = pprint.PrettyPrinter(indent=4, width=160) str = pp.pformat(obj) return re.sub(r"\\u([0-9a-f]{4})", lambda x: unichr(int("0x"+x.group(1), 16)), str) pprint モジュー
趣味でandroidアプリを開発しようと思いAndroid Studioという開発環境を以前インストールしました。 ただエミュㇾータの起動が遅すぎてこれではやる気がなくなると思いググったところ、最近はGenymotoinというものが速くてよさそうだと思ったのでさっそくインストールしてみました。 以下、環境構築のメモ 導入した環境 Fedora 20 x86_64 VirtualBoxをインストール Genymotionをインストール 下記サイトから必要なバイナリをダウンロードする。 genymotion Android Studioにプラグインをインストール -Genymotion Plugin 入れる。 Genymotionを起動する ./genymotionとする。(ここでいろいろlibaudio.so.2がみつからないとう感じのエラーになった) VirtualBoxの設定 VT-x/
luaのコルーチンでメニュー選択を書いた後、メニュー選択なんてそう頻繁に書き換えるもんじゃなかろうにわざわざluaで書いてC++と連携させるの面倒くさいなーC++でコルーチン書けないかなーと思ってコルーチンライブラリ探してました。 C++のコルーチン実装は一番有名なのはBoost:coroutineなんですかね。 でもBoostはコンパイルが遅くなるのでなるべく使いたくない。 それでもっと軽いの探してみたら、Boost.Asioのコルーチンマクロというのを見つけました。 なんとヘッダファイル2つのみ。インクルードしている外部ファイルも無し。 単にソースフォルダに放り込んでコンパイルすればOK。 タイトルの通りマクロで実装しているらしく、中身はよく分からないけどswitch文とgoto文で頑張ってコルーチンの機能を再現してるみたいです。 注意点はいくつかあるけど、最低限の機能はあるようで、コ
現在いるページのナビゲーションメニューのみに.activeとかcssを適用したいとき、いつもこう書いてる。 ただなんかもっと良い書き方ないかなーと思っているので、誰か良い案ある方いれば教えて下さい <ul class="nav"> <li class="<%= active_class_for('controller1') %>"><a href="#">Controller1</a></li> <li class="<%= active_class_for('controller2') %>"><a href="#">Controller2</a></li> <li class="<%= active_class_for('controller3') %>"><a href="#">Controller3</a></li> </ul>
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く