質問編集履歴

4

配置を変更しました。

2022/04/19 23:39

投稿

Kohinata
Kohinata

スコア30

test CHANGED
File without changes
test CHANGED
@@ -21,18 +21,7 @@
21
21
 
22
22
  protected $table = 'products';
23
23
 
24
- //可変項目
25
- protected $fillable = [
26
- 'product_name',
27
- 'company_id',
28
- 'price',
29
- 'stock',
30
- 'comment',
31
- 'image',
32
- ];
33
-
34
-
35
-    //queryビルダ
24
+ //queryビルダ
36
25
  $query = Product::query();
37
26
 
38
27
  //キーワード検索機能
@@ -45,8 +34,21 @@
45
34
  $query->where('company_id', $company_id);
46
35
  }
47
36
 
48
- $products = $query->get();
37
+ $products = $query->get();![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-04-20/5f610523-f9ba-415b-b036-6869eb95c5b9.png)
49
38
 
39
+
40
+ //可変項目
41
+ protected $fillable = [
42
+ 'product_name',
43
+ 'company_id',
44
+ 'price',
45
+ 'stock',
46
+ 'comment',
47
+ 'image',
48
+ ];
49
+
50
+
51
+    
50
52
  // Companiesテーブルと関連付ける
51
53
  public function company(){
52
54
  return $this->belongsTo('App\Models\Company');

3

コードを見やすくしました

2022/04/19 00:16

投稿

Kohinata
Kohinata

スコア30

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,7 @@
1
1
  > Product.php
2
2
 
3
+
4
+ ```Product.php
3
5
 
4
6
  <?php
5
7
 
@@ -50,6 +52,7 @@
50
52
  return $this->belongsTo('App\Models\Company');
51
53
  }
52
54
  }
55
+ ```
53
56
 
54
57
  queryビルダ〜 $products = $query->get();
55
58
 

2

詳細を付け加えました。

2022/04/19 00:13

投稿

Kohinata
Kohinata

スコア30

test CHANGED
File without changes
test CHANGED
@@ -1,32 +1,58 @@
1
- ```Company.php
1
+ > Product.php
2
+
3
+
2
4
  <?php
3
5
 
4
6
  namespace App\Models;
5
7
 
8
+ //3/25
9
+ // use Illuminate\Database\Eloquent\Factories\HasFactory;
6
10
 
7
11
  use Illuminate\Database\Eloquent\Model;
8
12
 
13
+
14
+
9
- class Company extends Model
15
+ class Product extends Model
10
16
  {
11
-
17
+ //3/25
18
+ // use HasFactory;
12
19
 
13
- //テーブル名
14
- protected $table = 'companies';
20
+ protected $table = 'products';
15
21
 
16
- // 可変項目
22
+ //可変項目
17
- protected $fillable =
23
+ protected $fillable = [
18
- [
24
+ 'product_name',
19
- 'company_name',
25
+ 'company_id',
20
- 'street_address'
26
+ 'price',
27
+ 'stock',
28
+ 'comment',
29
+ 'image',
21
30
  ];
22
31
 
23
-
24
32
 
33
+    //queryビルダ
34
+ $query = Product::query();
35
+
36
+ //キーワード検索機能
37
+ if (!empty($keyword)) {
38
+ $query->where('product_name', 'LIKE', "%{$keyword}%");
39
+ }
40
+
41
+ //プルダウン検索機能
42
+ if (isset($company_id)) {
43
+ $query->where('company_id', $company_id);
44
+ }
45
+
46
+ $products = $query->get();
47
+
25
- // Productsテーブルと関連付ける
48
+ // Companiesテーブルと関連付ける
26
- public function products(){
49
+ public function company(){
27
- return $this->hasMany('App\Models\Product');
50
+ return $this->belongsTo('App\Models\Company');
28
51
  }
29
52
  }
53
+
30
- ```
54
+ queryビルダ〜 $products = $query->get();
55
+
56
+ HomeController.phpにあった処理を関数とし、反映させたいのですが、赤の波線でエラーが出てきてしまうのですが、移動すると書き方が変わるのでしょうか?
31
57
 
32
58
  わかりにくい質問の仕方をしていたら申し訳ありません。よろしければご回答いただきたいです。

1

タグの変更しました。

2022/04/18 23:31

投稿

Kohinata
Kohinata

スコア30

test CHANGED
File without changes
test CHANGED
File without changes