【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/

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

 

【AngularJS】ng-repeatを使用した際に一瞬、倍の行数レンダリングされる問題。

タイトル通り。

どうやら公式でもバグ?として認識してる模様。

https://docs.angularjs.org/error/ngRepeat/dupes

下記のようにして対応する。

<tr ng-repeat="task in tasks track by $index">

「track by $index」を書いてやると解決する模様。

 

【AngularJS】ng-includeで読み込んだテンプレート内のng-modelの値を正常に参照する。

ためには、読み込み先のHTMLで下記のように変数を指定してやる。

■親

<div ng-controller="hogeCtrl">
    <div ng-include="'/child.html'"></div>
</div>

■子

<input type="text" ng-model="$parent.data.user" name="user">