我有2个表,country
和city
:
table 'country'
+----+------------+
| id | name |
+----+------------+
| 1 | Indonesia |
| 2 | Malaysia |
+----+------------+
country
有很多city
,因此country_id
是外键:
table 'city'
+----+------------+------------+
| id | name | country_id |
+----+------------+------------+
| 1 | Jakarta | 1 |
| 2 | Surabaya | 1 |
| 3 | Kuching | 2 |
+----+------------+------------+
我想使用Laravel Collective创建一个分组下拉列表,以便
country->name
成为<optgroup>
city
按其country
分组,并在HTML <option>
中成为<select>
的值LaravelCollective需要的是创建如下所示的数组:
[
'Indonesia' => ['1' => 'Jakarta', '2' => 'Surabaya'],
'Malaysia' => ['3' => 'Kuching']
]
City::get(['name', 'country_id', 'id'])->toArray()
给了我分组数组,但没有配对键值,country_id
仍在创建的数组中。
这样做有好办法吗?我是否必须使用foreach
或controller
上的view
使用传统HTML <select>
而不是使用Laravel Collective或2下拉链接JavaScript?
感谢〜