クエリビルダにおいて、innerJoinWith()やleftJoiinWith()でJOINしたものをテンプレートで表示するためには $tenancy->_matchingData['Tenants']->stage stackoverflow.com のように書きます。 もし不安な場合はdebugメソッドもしくは$tenancyのみで出力し確…
C:\ProgramData\ComposerSetup\bin内にある。 もしここにもない場合はEverything等のファイル検索ソフトを使う。
CREATE TABLE tags ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255), created DATETIME, modified DATETIME, UNIQUE KEY (title) ); このtitle属性は255文字までを格納する。同じ文のタグを重複して登録することは許されないため、ユニークキーと…
$bookmarks = $this->Bookmarks->find('tagged', [ テーブルのfindメソッドの第一引数が重要。 たとえば上記のようにBookmarks->find('tagged',のようになっているときは、BookmarksTableクラスのfindTaggedメソッドを探しに行く。 ここで見つからないときUn…
結論はこれ。 [CakePHP3] Setter(セッター)とGetter(ゲッター)をざっくりと知る。 – gomokulog 以下補足。 C#にはプロパティという機能がある。プロパティを実装すると、メンバ変数 x を持つクラスAがあるとき、a.x としても自動的にgetX()が呼び出されると…
bin/cake bake all users bin/cake bake all bookmarks bin/cake bake all tags CakePHP3のbookmarkerチュートリアルにて遭遇。 Linuxとは違ってWindowsでは区切り文字を\にする必要がある。 つまり、Windowsでの正解は bin\cake bake all usersbin\cake bak…
CakePHPはMVCであり、その内のモデルを2種類に分けたものがテーブルとエンティティです。ざっくり言うとテーブルとはそのままDBのテーブル(集合)を表し、エンティティとは各行を表します。 テーブルクラスにはDBとの通信に必要な情報が保持されているため、D…
contain 関連をイーガーロード (eager load) するように定義します。 データの取り出しと結果セット イーガーロードとは、N+1問題を回避する手段らしい。 まず、N+1問題とは? ユーザーマスタと、著者のユーザIDを属性としてもつ記事テーブルがあるとします…
Templateディレクトリに間違った名前のディレクトリを作成してしまった。 具体的には単数形にしてしまっていた。 その後、PHPStormのリネーム機能でディレクトリ名を複数形にした。 すると、どのページにアクセスしてもUnable to find ~ panel.とエラーメッ…
New router goodies » Debuggable - Node.js Consulting によると、 そもそもリンクの書き方は、文字列での指定と、連想配列での指定の2つがある。 ①文字列の場合$html->link('My post title', '/posts/view/5' ); ②連想配列の場合$html->link('My post titl…
ブログチュートリアル - パート2 echo $this->Form->create($article); は、 echo $this->Form->create();としても動いているようにみえるけれど、 ArticlesControllerのsaveで例外(DB接続失敗、バリデーションエラー等)が起きた際、 $article = $this->Arti…
ブログチュートリアル 下記の方法で文字コードを指定してやる必要があります。 CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, title VARCHAR(50), body TEXT, created DATETIME DEFAULT NULL, modified DATETIME DEFAULT NULL) char…
CakePHPでマジックメソッドを使う時に出る。フィールド変数が無いから気をつけろということだそうだ。 PHPStormの設定で警告を抑制する方法と、アノテーションを書く方法がある。 www.thinkingmedia.ca アノテーションだとこんな感じ。 use App\Model\Table\…
ブログチュートリアル - パート2 CakePHP のモデルクラスのファイルは、 Table オブジェクトと Entity オブジェクトに分離して 存在します。 なぜわざわざ分けたのかとググると Why did cakephp v3 split the Model into Table and Entity? What are the adv…
Composerをインストールしていてコマンドプロンプトで使用出来ている場合、 where composerとコマンドプロンプトで打てば composer.pharが存在するディレクトリが分かります。 こんな感じです。 C:\Users\ユーザー名>where composerC:\ProgramData\ComposerS…
$container['domain.transfer.newsletter'] = function($c) { } の$cは$containerの略で、コンテナ自身(this)らしい。 d.hatena.ne.jp Note that $c will be passed an instance of the container, so we can reference other defined keys as we please; ea…
CakePHP3のブックマークチュートリアルのUserモデルをPHPStormで編集していると Detect PSR-0 namespace roots: Do you want to configure namespace roots? It can be done automatically or manually at Settings | Directories. という警告が右下に出た。…
完全に透明の部分しか渡せません。 Python 2.7.10 # -*- coding:utf-8 -*-import cv2 #アルファチャネルを読み込むためにcv2.IMREAD_UNCHANGEDを渡すimage = cv2.imread('exa.png',cv2.IMREAD_UNCHANGED)#countNonZeroは1チャネルの画像しか渡せないので、ア…