質問編集履歴

6

Apacheのログにて対象のエラーが見つかったので追記しました。

2021/11/20 12:21

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -206,6 +206,18 @@
206
206
 
207
207
 
208
208
 
209
+ ### エラー内容
210
+
211
+
212
+
213
+ [autoindex:error] [pid 26956:tid 1288] [client ::1:64175] AH01276: Cannot serve directory
214
+
215
+
216
+
217
+ ---
218
+
219
+
220
+
209
221
 
210
222
 
211
223
  [参照動画](https://www.youtube.com/watch?v=5H6Pd17Qbxk&t=42s)

5

Controllerを修正しました。

2021/11/20 12:21

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -10,6 +10,8 @@
10
10
 
11
11
  ```Controller
12
12
 
13
+
14
+
13
15
  /**
14
16
 
15
17
  * 商品登録画面を表示する

4

Controller修正しました。

2021/11/20 11:46

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -10,10 +10,38 @@
10
10
 
11
11
  ```Controller
12
12
 
13
-
14
-
15
13
  /**
16
14
 
15
+ * 商品登録画面を表示する
16
+
17
+ *
18
+
19
+ * @return view
20
+
21
+ */
22
+
23
+ public function showCreate()
24
+
25
+ {
26
+
27
+ // INNAR JOIN
28
+
29
+ $products = \DB::table('products')
30
+
31
+ ->join('companies','products.company_id','=','companies.id')
32
+
33
+ ->get();
34
+
35
+
36
+
37
+ return view('create.create', ['products' => $products]);
38
+
39
+ }
40
+
41
+
42
+
43
+ /**
44
+
17
45
  * 商品を登録する
18
46
 
19
47
  *

3

Modelを追加しました。

2021/11/20 11:44

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -86,6 +86,70 @@
86
86
 
87
87
 
88
88
 
89
+ ```Model
90
+
91
+
92
+
93
+ <?php
94
+
95
+
96
+
97
+ namespace App\Models;
98
+
99
+
100
+
101
+ use Illuminate\Database\Eloquent\Model;
102
+
103
+
104
+
105
+ class Product extends Model
106
+
107
+ {
108
+
109
+ //テーブル名
110
+
111
+ protected $table = 'products';
112
+
113
+
114
+
115
+ // 可変項目
116
+
117
+ protected $fillable =
118
+
119
+ [
120
+
121
+ 'company_id',
122
+
123
+ 'product_name',
124
+
125
+ 'price',
126
+
127
+ 'stock',
128
+
129
+ 'comment',
130
+
131
+ 'image',
132
+
133
+ ];
134
+
135
+
136
+
137
+ // Companiesテーブルと関連付ける
138
+
139
+ public function company(){
140
+
141
+ return $this->belongsTo(Company::class);
142
+
143
+ }
144
+
145
+ }
146
+
147
+
148
+
149
+ ```
150
+
151
+
152
+
89
153
  ```CreateBlade
90
154
 
91
155
 

2

Controllerを修正しました。

2021/11/20 11:39

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -12,9 +12,29 @@
12
12
 
13
13
 
14
14
 
15
- $image = $request->file('image');
15
+ /**
16
16
 
17
-
17
+ * 商品を登録する
18
+
19
+ *
20
+
21
+ * @return view
22
+
23
+ */
24
+
25
+ public function exeStore(ProductRequest $request)
26
+
27
+ {
28
+
29
+ // 商品のデータを受け取る
30
+
31
+ $inputs = $request->all();
32
+
33
+
34
+
35
+ $image = $request->file('image');
36
+
37
+
18
38
 
19
39
  // 画像がアップロードされていれば、storageに保存
20
40
 
@@ -29,6 +49,36 @@
29
49
  $path = null;
30
50
 
31
51
  }
52
+
53
+
54
+
55
+ \DB::beginTransaction();
56
+
57
+ try {
58
+
59
+ // 商品を登録
60
+
61
+ Product::create($inputs);
62
+
63
+ \DB::commit();
64
+
65
+ } catch(\Throwable $e) {
66
+
67
+ \DB::rollback();
68
+
69
+ abort(500);
70
+
71
+ }
72
+
73
+
74
+
75
+ \Session::flash('err_msg', '商品を登録しました。');
76
+
77
+ return redirect(route('products'));
78
+
79
+ }
80
+
81
+
32
82
 
33
83
 
34
84
 

1

追記

2021/11/19 10:41

投稿

mimitaro
mimitaro

スコア0

test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,8 @@
3
3
  シンボリックリンクは実行しており、Public\storageに画像の保存もできております。
4
4
 
5
5
  もちろんDBにもアップロードした画像のパスはあります。
6
+
7
+ storageの権限もフルアクセスにしてます。
6
8
 
7
9
 
8
10