RDB

Laravel 多対多リレーション

複数のuserが複数のproductをもてる→多対多 中間pivotテーブルとしてcartを作成し、それぞれ1対多の関係にする cartsテーブル作成 root@f6999f3b8a5b:/var/www/html# php artisan make:model Cart -m 外部キー設定を記述 id(); //ownerを削除したらshopも消…

Laravel 外部キーやリレーションなど

productsテーブル作成 productモデル、マイグレーション作成 外部キーを設定する際には、親のモデルを削除するかどうか、親を削除したときに同時に削除するかを考える必要がある。 ownerを削除したらshopも消える、shopが消えたらproductも消えるようにする→…

Laravel Seeder複数テーブル書く方法

primary_categoriesテーブルとsecondary_categoriesテーブルを作成。 どちらも関係のあるカテゴリーなので1つのマイグレーションファイルに書いていくので1つだけ作成。 primary_categoriesは複数のカテゴリーをもつので1対多の関係になる。 php artisan m…

Laravel 画像管理画面のindex作成

imageテーブル作成 リレーション hasOne(Shop::class); } public function image() { //imageを複数もてる1対多の関係なのでhasManyとする return $this->hasMany(Image::class); }

Laravel shop一覧、編集画面遷移、transaction、例外処理

ownersとshopsテーブルの関係 shop作成、transaction、編集画面 shop作成 1つのownerが1つのshopをもつのでowner登録をした際に同時にshopも作るようにする。 →ownerを作成するのはadmin側なので、adminでownerを登録した際にshopも作成する。 編集画面遷移 …

Laravel 外部キー Tinker

外部キー制約 紐づくモデル名+「_id」で外部キーと呼ぶ shopsテーブルにowner_idを作成しownersテーブルのidと紐付ける model migration seederの作成 shopのマイグレーションファイル foreignId('owner_id')->constrained();で「紐づくモデル名_id」として…

MySQL、Group by 集約関数、left join、right join

作成したテーブルを操作していく。 Group By Group Byとは、データを条件にしたがって集約するもの SELECTにGroup Byを付けることで、集約したいカラムをもとに、集約関数で合計や平均、最小値や最大値を設定できる。 selectとgroup byは1対1にしないといけ…

GUI,CUIでレコードをいれる、Joinでテーブルを結合、order byで並び替え

作成したテーブルにレコードをいれていく GUIではエクセルみたいにいれてApply押すだけ CUIではINSERTで作成 mysql> show tables; +---------------------+ | Tables_in_demo | +---------------------+ | db_ex_item | | db_ex_order_detail | | db_ex_user…

GUI、CUIでテーブルを作成

GUIでの作成 MySQLWorkbenchでのテーブル作成方法 以下のテーブルを作成する id(主キー) name adress 1 meo1 xxx-ttt 2 meo2 xxx-yyy 3 meo3 xxx-uuu id(主キー) name manufacture price 1 meo1 〇〇工場 1000 2 meo2 〇〇工場 222 3 meo3 〇〇工場 900 id(…

MySQL select where

DB構造 スキーマ各種→demoスキーマ →システムスキーマ→システムcfgスキーマテーブル(設定など) →テーブル各種 テーブル情報に対しての操作、レコード追加、編集、削除など行い さまざまなテーブルがjoinして出来上がる テーブルに含まれるカラム、レコード、…

Rails ブックマークの実装part2

part1からの続き 中間モデルを定義したので ルーティング→コントローラ→viewと実装していきます。 ルーティングの設定 BoardモデルとBookmarkモデルが紐付いてるので、ルーティングをネストする必要がある。 commentsとbookmarksコントローラはboardsコント…

Rails ブックマークの実装part1

実装内容 掲示板の☆ボタンを押すと、その掲示板をブックマーク/解除出来る機能を作成。 ブックマークすると★解除すると☆になるようにし、フラッシュメッセージも表示させる。 同じユーザが同じ掲示板を複数回ブックマークできないようにする。 ブックマーク…

Rails 掲示板にコメント機能を追加 part2

part1からの続き。 掲示板の詳細画面を実装したので、そこにコメント機能を実装していく。 投稿詳細画面へコメントの入力フォーム、エリアを追加する。 # Controllerへ追記。 boards_controllerにインスタンス変数@commentと@commentsを定義し、view側で呼び…

Rails 掲示板にコメント機能を追加 part1

概要 掲示板詳細画面を追加し、その中でコメントをできるようにする。 掲示板一覧画面から掲示板のタイトル名を押すと掲示板詳細画面へ行けるようにする。 書き込んだコメントが一番上に表示されるようにコメントの並び順を指定 コメントした本人のみに削除…

Rails 掲示板一覧の作成

モデルの作成 Boardモデルの作成しtitle,bodyカラムを追加する。 Boardモデルにuser_idを外部キーとして設定する。 紐づくモデル名+「_id」で外部キーと呼ぶ。 reference型を使いモデルと同時に作成。 $ rails g model board title:string body:text user:re…