質問編集履歴
6
更新
title
CHANGED
File without changes
|
body
CHANGED
@@ -22,7 +22,20 @@
|
|
22
22
|
- Warning (2): Invalid argument supplied for foreach() [CORE/src/ORM/Marshaller.php, line 289]
|
23
23
|
|
24
24
|
となりました。
|
25
|
+
|
26
|
+
追記
|
27
|
+
http://stackoverflow.com/questions/32912941/cakephp-3-x-saving-multiple-entities-newentities
|
28
|
+
のサイトより
|
29
|
+
0. echo $this->Form->input($i.'.question',['label' => '質問','placeholder' => '質問文']);
|
30
|
+
と変えてみたら、valitation出ました。
|
31
|
+
formヘルパーの文法的に
|
25
32
|
```php
|
33
|
+
echo $this->Form->input('0.column_name', /* ... */);
|
34
|
+
echo $this->Form->input('1.column_name', /* ... */);
|
35
|
+
|
36
|
+
```
|
37
|
+
ですね。
|
38
|
+
```php
|
26
39
|
addition5.ctp
|
27
40
|
<?php
|
28
41
|
echo $this->Form->create('Quizs',["class" => "quizform"]);
|
@@ -56,6 +69,4 @@
|
|
56
69
|
|
57
70
|
}
|
58
71
|
|
59
|
-
```
|
72
|
+
```
|
60
|
-
|
61
|
-
問題が複数あって恐縮ですがまずはEntityの方のBookmarkがいけないのか。デバッグ方法も含めてお知恵をお貸し頂ければと存じます。
|
5
更新
title
CHANGED
File without changes
|
body
CHANGED
@@ -16,7 +16,12 @@
|
|
16
16
|
use Cake\ORM\Table;
|
17
17
|
use Cake\Validation\Validator;
|
18
18
|
0. 複数データの挿入のみの問題になりました。
|
19
|
+
0. request->data()の引数に'Quizs'を追記したところ、
|
20
|
+
- Warning (4096): Argument 1 passed to Cake\ORM\Table::newEntities() must be of the type array, null given, called in /var/www/html/cakephp/project_name/src/Controller/QuizsController.php on line 66 and defined [CORE/src/ORM/Table.php, line 2053]
|
21
|
+
- Warning (4096): Argument 1 passed to Cake\ORM\Marshaller::many() must be of the type array, null given, called in /var/www/html/cakephp/project_name/vendor/cakephp/cakephp/src/ORM/Table.php on line 2059 and defined [CORE/src/ORM/Marshaller.php, line 286]
|
22
|
+
- Warning (2): Invalid argument supplied for foreach() [CORE/src/ORM/Marshaller.php, line 289]
|
19
23
|
|
24
|
+
となりました。
|
20
25
|
```php
|
21
26
|
addition5.ctp
|
22
27
|
<?php
|
@@ -39,7 +44,7 @@
|
|
39
44
|
public function addition5(){
|
40
45
|
$this->ViewBuilder()->layout('hoge');
|
41
46
|
$quizs = TableRegistry::get('Quizs');
|
42
|
-
$entities = $quizs->newEntities($this->request->data());
|
47
|
+
$entities = $quizs->newEntities($this->request->data('Quizs'));//Quizsと追記
|
43
48
|
//var_dump($entities);
|
44
49
|
|
45
50
|
if($this->request->is('post')){
|
4
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,6 +7,16 @@
|
|
7
7
|
0. src\Model\Entity\Quiz.phpにてclass Quiz extends Entity{}と直すと、一つのレコードを挿入するctpファイルのコードの方ではnullのレコードが挿入されてしまう。(valitationは一応効くが、正しい情報を入力しても空レコードになる。)
|
8
8
|
0. atomにてプロジェクト内を検索して、「ookmark」と検索するも、src\Model\Entity\Quiz.phpとsrc\Template\Pages\home.ctpに書いてあるBookmarkしか見当たらない。※これがとにかく気持ち悪い
|
9
9
|
0. 複数レコードの際のフォームは、フォームヘルパーにてname属性を配列にしてあげるも、var_dumpすると、POSTは表示されるも、entitiesの方は入力された情報が見当たらない。
|
10
|
+
|
11
|
+
追記
|
12
|
+
0. 別のプロジェクトにbakeコマンドで適当にモデルを作り、そのモデルにあった、以下の名前空間の階層化のコードをQuizsTable.phpに挿入して、bookmarkをquizに変更したら空フィールド現象はなくなりました。
|
13
|
+
use App\Model\Entity\Quiz;
|
14
|
+
use Cake\ORM\Query;
|
15
|
+
use Cake\ORM\RulesChecker;
|
16
|
+
use Cake\ORM\Table;
|
17
|
+
use Cake\Validation\Validator;
|
18
|
+
0. 複数データの挿入のみの問題になりました。
|
19
|
+
|
10
20
|
```php
|
11
21
|
addition5.ctp
|
12
22
|
<?php
|
3
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,10 +3,10 @@
|
|
3
3
|
現在、一つのレコードに関しては、実装済なのですが、いろいろと不具合が生じてきました。
|
4
4
|
|
5
5
|
|
6
|
-
0.
|
6
|
+
0. src\Model\Entity\Quiz.phpにてclass Bookmark extends Entity{}と定義してるのに1つのレコードの挿入はできる(valitationは働く。情報も挿入される)
|
7
|
-
0.
|
7
|
+
0. src\Model\Entity\Quiz.phpにてclass Quiz extends Entity{}と直すと、一つのレコードを挿入するctpファイルのコードの方ではnullのレコードが挿入されてしまう。(valitationは一応効くが、正しい情報を入力しても空レコードになる。)
|
8
|
-
0.
|
8
|
+
0. atomにてプロジェクト内を検索して、「ookmark」と検索するも、src\Model\Entity\Quiz.phpとsrc\Template\Pages\home.ctpに書いてあるBookmarkしか見当たらない。※これがとにかく気持ち悪い
|
9
|
-
0.
|
9
|
+
0. 複数レコードの際のフォームは、フォームヘルパーにてname属性を配列にしてあげるも、var_dumpすると、POSTは表示されるも、entitiesの方は入力された情報が見当たらない。
|
10
10
|
```php
|
11
11
|
addition5.ctp
|
12
12
|
<?php
|
2
見やすさを変える
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,11 +3,10 @@
|
|
3
3
|
現在、一つのレコードに関しては、実装済なのですが、いろいろと不具合が生じてきました。
|
4
4
|
|
5
5
|
|
6
|
-
|
7
|
-
|
6
|
+
0. 番号リストsrc\Model\Entity\Quiz.phpにてclass Bookmark extends Entity{}と定義してるのに1つのレコードの挿入はできる(valitationは働く。情報も挿入される)
|
8
|
-
|
7
|
+
0. 番号リストsrc\Model\Entity\Quiz.phpにてclass Quiz extends Entity{}と直すと、一つのレコードを挿入するctpファイルのコードの方ではnullのレコードが挿入されてしまう。(valitationは一応効くが、正しい情報を入力しても空レコードになる。)
|
9
|
-
|
8
|
+
0. 番号リストatomにてプロジェクト内を検索して、「ookmark」と検索するも、src\Model\Entity\Quiz.phpとsrc\Template\Pages\home.ctpに書いてあるBookmarkしか見当たらない。※これがとにかく気持ち悪い
|
10
|
-
|
9
|
+
0. 番号リスト複数レコードの際のフォームは、フォームヘルパーにてname属性を配列にしてあげるも、var_dumpすると、POSTは表示されるも、entitiesの方は入力された情報が見当たらない。
|
11
10
|
```php
|
12
11
|
addition5.ctp
|
13
12
|
<?php
|
1
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
1,src\Model\Entity\Quiz.phpにてclass Bookmark extends Entity{}と定義してるのに
|
7
|
+
1,src\Model\Entity\Quiz.phpにてclass Bookmark extends Entity{}と定義してるのに1つのレコードの挿入はできる(valitationは働く。情報も挿入される)
|
8
8
|
2,src\Model\Entity\Quiz.phpにてclass Quiz extends Entity{}と直すと、一つのレコードを挿入するctpファイルのコードの方ではnullのレコードが挿入されてしまう。(valitationは一応効くが、正しい情報を入力しても空レコードになる。)
|
9
9
|
3,atomにてプロジェクト内を検索して、「ookmark」と検索するも、src\Model\Entity\Quiz.phpとsrc\Template\Pages\home.ctpに書いてあるBookmarkしか見当たらない。※これがとにかく気持ち悪い
|
10
10
|
4,複数レコードの際のフォームは、フォームヘルパーにてname属性を配列にしてあげるも、var_dumpすると、POSTは表示されるも、entitiesの方は入力された情報が見当たらない。
|