Archives by date

You are browsing the site archives by date.

【AngularJS】サービスの使い方。

メモ。

まずはサービスを定義。
※中身はすべて例。

angular.module('', []).factory('hogeFugaService', function() {
    // returnしたオブジェクトがサービスになる。
    return function(data) {
        // なんらかのロジックやらなんやら。
    }
})

これでhogeFugaServiceというサービスが生成される。

そしてコントローラーで使いたい時は下記のようにサービス名を指定して注入してやる。

angular.module('...').controller('hogeCtrl', function($scope, hogeFugaService) {
    // これでhogeFugaServiceを利用出来るようになる。
})

一定の処理をまとめておくのに使えるので非常に便利。

 

【AngularJS】ServiceとFactoryの違い。

■Service
渡したfunctionをコンストラクタとしてインスタンスを生成、そのインスタンスをサービスに登録する。

■Factory
渡したfunctionをそのままサービスに登録する。

 

【Symfony2.3】doctrine:schema:updateの際、ForeignKey周りで怒られたら。

紐付けてるカラム同士の型やサイズなど、全てが同じように生成されているかを確認する。

たとえば下記のように怒られた時。

SQLSTATE[HY000]: General error: 1005 Can't create table X (errno: 150). Failing Query: ALTER TABLE tablename ADD FOREIGN KEY (key_id) REFERENCES table(id)

key_idとidのカラム型は一致しているか、サイズは一致しているか、オプションなどは一致しているかを確認して寸分の狂い無く同一に定義してやれば幸せになれる。

自分の場合、片方だけにunsigned属性が与えられていたのでエラーとなってしまっていた。

 

【Symfony2.3】自分用デバッグ関数。

app_dev.phpの先頭に下記を追加。

function vd($var) {
    \Doctrine\Common\Util\Debug::dump($var);
    die();
}

これがないとほんとやってられない。

 

【Eclipse】で消えない構文エラーを消す。

「Project」→「Clean」をおして見る。

と幸せになれるかもしれない。

 

【Git】「git push」する際に「Bad owner or permissions」エラー。

になった。

ふとした拍子に

chmod -R 777 /

を実行してしまったのが原因だった模様。

gitに接続する際の設定ファイルである「~/.ssh/config」は権限を与えすぎると、下記のように怒られてしまう。

Bad owner or permissions on /root/.ssh/config
fatal: The remote end hung up unexpectedly

ので該当のファイルに権限600を与えてやれば解決する。

そしてrsaキーのファイルも権限を与えすぎていると下記のようにどえらく派手に怒られる

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

のでもういっそ「/root/.ssh/」に対して-Rで600をかけてしまうと幸せになれる。

 

【Symfony2.3】Entityのアノテーションでカラムの初期値を設定する方法。

めも。

@ORM\Column(name="status", type="smallint", options={"default" = 1})

 

【jQuery】テーブル要素の行とカラムを固定出来るプラグイン。

Grid.jsよりもこっちのほうがシンプルかも。

http://fixedheadertable.com/

めっちゃ使いやすかったのでオススメ。