CakePHP テーブルから bake でスケルトンの作成

データベースにテーブルが存在すれば、bakeコマンドでスケルトンを作成してくれる。
スケルトンとは、Model, View ,Controllerの各ファイルのこと。

テーブルは作成されていることとする。

  リンク:CakePHPのチュートリアルより

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    email VARCHAR(255) NOT NULL,
    password VARCHAR(255) NOT NULL,
    created DATETIME,
    modified DATETIME
);

テーブルの規約は、だいたいこんな感じで理解

・テーブル名は、複数形とすること。 artiles
・主キーは id
・createとmodified のDATETIME列をつけてあげる。

リンク:データベースの規約

ここから、bakeの手順

XAMPP Control Panel を起動する。

C:\xampp\xampp-control.exe

XAMPP Control Panel 内の Shell ボタンをクリックする。

アプリケーションのフォルダに移動する。

cd c:\xampp\htdocs\book

bakeコマンドの実行

php bin/cake.php bake all users

以下、ずら~~~と、実行経過、結果が表示される。

Bake All
---------------------------------------------------------------
One moment while associations are detected.

Baking table class for Users...

Creating file C:\xampp\htdocs\book\src\Model\Table\UsersTable.php
Wrote `C:\xampp\htdocs\book\src\Model\Table\UsersTable.php`
Deleted `C:\xampp\htdocs\book\src\Model\Table\empty`

Baking entity class for User...

Creating file C:\xampp\htdocs\book\src\Model\Entity\User.php
Wrote `C:\xampp\htdocs\book\src\Model\Entity\User.php`
Deleted `C:\xampp\htdocs\book\src\Model\Entity\empty`

Baking test fixture for Users...

Creating file C:\xampp\htdocs\book\tests\Fixture\UsersFixture.php
Wrote `C:\xampp\htdocs\book\tests\Fixture\UsersFixture.php`
Deleted `C:\xampp\htdocs\book\tests\Fixture\empty`
Bake is detecting possible fixtures...

Baking test case for App\Model\Table\UsersTable ...

Creating file C:\xampp\htdocs\book\tests\TestCase\Model\Table\UsersTableTest.php
Wrote `C:\xampp\htdocs\book\tests\TestCase\Model\Table\UsersTableTest.php`

Baking controller class for Users...

Creating file C:\xampp\htdocs\book\src\Controller\UsersController.php
Wrote `C:\xampp\htdocs\book\src\Controller\UsersController.php`
Bake is detecting possible fixtures...

Baking test case for App\Controller\UsersController ...

Creating file C:\xampp\htdocs\book\tests\TestCase\Controller\UsersControllerTest.php
Wrote `C:\xampp\htdocs\book\tests\TestCase\Controller\UsersControllerTest.php`

Baking `index` view template file...

Creating file C:\xampp\htdocs\book\src\Template\Users\index.ctp
Wrote `C:\xampp\htdocs\book\src\Template\Users\index.ctp`

Baking `view` view template file...

Creating file C:\xampp\htdocs\book\src\Template\Users\view.ctp
Wrote `C:\xampp\htdocs\book\src\Template\Users\view.ctp`

Baking `add` view template file...

Creating file C:\xampp\htdocs\book\src\Template\Users\add.ctp
Wrote `C:\xampp\htdocs\book\src\Template\Users\add.ctp`

Baking `edit` view template file...

Creating file C:\xampp\htdocs\book\src\Template\Users\edit.ctp
Wrote `C:\xampp\htdocs\book\src\Template\Users\edit.ctp`
Bake All complete.

が表示される。

つまり作成されたのは、
作成されたのは、以下の通り。(testsを除く)

\Model
    \Table\
          UsersTable.php
\Model
      \Entity\
          User.php
\Controller\
          UsersController.php
\Template
      \Users\
          index.ctp
          view.ctp
          add.ctp
          edit.ctp

ブラウザからアクセスする。

 http://localhost/book/users

一覧が表示される!


VSCODEをコンテキストメニューに追加する

Visual Studio Codeをエクスプローラーでファイル、フォルダを右クリックしたときのメニューに追加する。

レジストリ操作で、3箇所にフォルダを追加した。

[HKEY_CLASSES_ROOT\*\shell\VSCode]
@="VSCodeで開く"
"Icon"="C:\\Program Files\\Microsoft VS Code\\Code.exe"

[HKEY_CLASSES_ROOT\*\shell\VSCode\command]
@="\"C:\\Program Files\\Microsoft VS Code\\Code.exe\" \"%1\""
[HKEY_CLASSES_ROOT\Directory\shell\VSCode]
@="VSCodeで開く"
"Icon"="C:\\Program Files\\Microsoft VS Code\\Code.exe"

[HKEY_CLASSES_ROOT\Directory\shell\VSCode\command]
@="\"C:\\Program Files\\Microsoft VS Code\\Code.exe\" \"%1\""
[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode]
@="VSCodeで開く"
"Icon"="C:\\Program Files\\Microsoft VS Code\\Code.exe"

[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command]
@="\"C:\\Program Files\\Microsoft VS Code\\Code.exe\" \"%1\""</code>

参考ページ:Windowsコンテキストメニューに「Visual Studio Codeで開く」を追加する
  この参考ページのcommandに”%1″ を付与したところうまくいきました。

VS Code が更新のたびに警告を出力する

---------------------------
エラー
---------------------------
C:\Program Files\Microsoft VS Code\_\api-ms-win-core-datetime-l1-1-0.dll

コピー先のフォルダにファイルを作成中にエラーが発生しました。:
ディレクトリ C:\Program Files\Microsoft VS Code\_ を作成中にエラーが発生しました。.

エラー 5: アクセスが拒否されました。.

もう一度やりなおすには「再試行」、このファイルをスキップして続行するには「無視」(推奨されません)、インストールを中止するには「中止」をクリックしてください。
---------------------------
中止(A)   再試行(R)   無視(I)
---------------------------

フォルダのアクセス権を変更して解決
Users フル
C:\Program Files\Microsoft VS Code

VC++ runtime が必要だったのかもしれない。

Spotify, Amazon Prime Music 自動起動しないようにする

無料音楽配信サービスのSpotifyを使うと、PC起動と同時に勝手に起動される。
同様に、
Amazonプライム会員なら無料のAmazon Prime MusicもPC起動と同時に起動される。

勝手に立ち上がってくれるのは、ありがた迷惑だ。
どちらもアプリケーション内の設定で起動しない様にできるのでメモしておく。

Spotifyの自動起動を解除する方法

まずは、設定画面を出す方法だが、2種類ある。

その1
画面右上の自分のアカウント名の右にある V をクリックして表示される「設定」をクリックする。
この方法は、後述のAmazon Prime Musicと同じなので、使っていると覚えていくかな。

その2
メニューから「編集」⇒「環境設定」でも同じく、「設定」の画面が表示される。

設定箇所
「設定」の中の「詳細設定」にあるので、一番下まで進み
「詳細設定を表示する」をクリックする。

「詳細設定」の中ほどに「スタートアップとソフトウェア動作設定」があるので、
その中の「パソコン起動後にSpotifyを自動的に開く」を「いいえ」にする。

Amazon Prime Musicの自動起動を解除する方法

画面右上の自分のアカウント名の右にある V をクリックして表示される「設定」をクリックする。

「詳細」の「コンピュータの起動時にアプリを自動的に起動」のチェックをクリックして、チェックされていない状態にする。

Firefox Quantum の Quantum とは? 量子。量子とは???

Firefoxが更新されて、Firefox Quantum となった。なんか強そうだ。

アイコンも変わった。

Quantum とはなんぞや?
読み方 クヮンタム
意味は 量子

で、量子とはウィキへどうぞ。

マイクロソフトの最重要テクノロジーでも、AI、MRそして量子コンピュータと言っている。
これから普通に使われるワードになりそうだ。

マイクロソフト + 量子コンピュータ での検索記事。
ちょっと何言ってるかわからないw って感じだ。とにかくとっても速くなるみたい。
今度は“量子コンピュータの民主化” Microsoftの狙いは

Microsoftが量子コンピューティングの競争に参戦

Hyper-Vゲストを別ホストに移動するのが簡単になってる

かなり前からHyper-Vを使ってるが最近驚いたのが、ゲストの引っ越しが簡単になってること。

以前は、ゲストをシャットダウンしてエクスポートしてから
引っ越し先にコピーして
インポートっていうとてつもなく時間のかかる作業だった。

今は、シャットダウンしてフォルダーごとコピーして
インポートすればよくなってる。

昔はこれで何度も失敗してたけど、いつのまにか実現してたんだ。