サイド上背景

サイトについて

リンクフリー

個人ご利用の場合はリンクフリーです。備忘録等に各種ドキュメントへのリンク。ご自由にご利用ください。

転載

出典元表記(当社名orリンク記載)の際は転載等ご自由にご利用ください。

ライセンス

このページの内容の一部は、Google が作成、提供しているコンテンツをベースに変更・複製したもので、クリエイティブ・コモンズの表 示 3.0 ライセンスに記載の条件に従って使用しています。

株式会社 Sola.com

ソラコムお問い合わせ

〒981-0913
宮城県仙台市青葉区昭和町3-7 スカイコート上杉601
TEL:022-234-9972
Fax:022-778-6779

きょうのことば

" 大きい貢献、目立たぬサポート、具体的な現実主義 "

ドイツ参謀部標語(松村 2005)


コンテンツ背景
Home スタッフ雑記 chiba cakeでbake(modelの場合)
cakeでbake(modelの場合)
作者: 千葉   

 

<Newコマンド>

grep … findと似ている。こちらはファイル内に指定した単語が含まれているものを検索し、表示する。

ex) grep  -R  "(探したい単語)"  ./

*基本的に「-R」というオプションをつける。

 

<bakeにおける注意点~はじめに。>

・C(コントロール)でエラーが出ると、大変面倒な事になりかねません。

・特にcakephpさんは”名前”を大切になさっているので、スペルミス等には十分気をつけましょう!

全角がお嫌いでいらっしゃるので、(データベース名の)保存時にうっかり全角で名前をつけないこと。

 

<bakeの基本的な手順>

基本的にはMVC構造になり、実行は[M][V][C]になります。

M(モデル) … モデル。人でいう骨格や神経にあたります。

V(ビュー) … ひな型。見た目。(皮膚)

C(コントロール) … 動作。筋肉。

人間を作るとするなら、骨格→筋肉→皮膚になるので、MVC型といいつつ手順は

MCV

*始めの型の選択については割愛します。

>M(odel)の作り方
1. Use Database Config: (default/test)
[default] >

基本的にはBdefaultを利用。

2. Possible Models based on your current database:
(作ったデータベースのtable名が表示される)
 >

モデルを作成したいデータベースの番号を選択。

3. A displayField could not be automatically detected would you like to choose one? (y/n)

[y] >

formヘルパーでlabelを自動出力する際に、どのカラム名をlabelにするかの設定らしいです。
とりあえず、無害そうなので分かるまではYを選択。

4. Choose a field from the options above:
(選んだtableのフィールド名が質問の上に表示されます)
 >

恐らくプライマリーに選んだものを選択しておくのがベターだと思われます。

5. Would you like to supply validation criteria for the fields in your model? (y/n)
[y] > n

validationを作成してくれるようです。しかし利用しないのでNを選択。

6. Would you like to define model associations (hasMany, hasOne, belongsTo, etc.)? (y/n)
[y] >

hasMany ・・ 1対多

hasOne ・・ 1対1

belongsTo ・・ 多対1

hasAndBelongsToMany ・・多対多

更に詳しくは → cakephp cookbook 3.7.6.1 関連の形式

関連があればY、なければNを選択。

7. (選択したtable名) belongsTo Type? (y/n)
[y] >

(選択したtable名)はTypeに属するかどうか?


8. (選択したtable名) hasAndBelongsToMany Favorite? (y/n)
[y] >

(選択したtable名)は、複数のFavoriteを持ち、且つ属しているのか?

9. Would you like to define some additional model associations? (y/n)
[n] >

補足されたモデルの関係を定義しますか?

10.Look okay? (y/n)

[y] >

11.SimpleTest is not installed. Do you want to bake unit test files anyway? (y/n)

[y] >

シンプルテストがインストールされていません。どこかに単体テストのファイルをつくりますか?

 

>次はC(ontrol)について!

 

<phpファイルについて>

string・・・文字型。

int・・・数値型。小数点はとらない。

if・・・条件文。

以上の3つはCでもPythonでもみる単語で、ほぼ使用が必須になってくる。