选中 Laravel Livewire 编辑表单中的复选框
Check checkboxes in Laravel Livewire edit form
我有一个 Gebruikers 模型(荷兰语用户)和一个 Ateliers 模型(荷兰语车间)。它们之间是多对多的关系。
当保存一个新的 Gebruiker 时,您可以查看该 gebruiker 正在参加的工作室。
在 Livewire 'controller':
public $selectedAtelier = [];
public $gebruiker;
public function saveGebruiker(){
$nieuwegebruiker = Gebruiker::create([
'first' => $this->gebruiker['first'],
'last' => $this->gebruiker['last'],
]);
$nieuwegebruiker->ateliers()->sync($this->selectedAtelier);
}
在组件中:
<input type="text" wire:model="gebruiker.first">
<input type="text" wire:model="gebruiker.last">
@foreach ($ateliers as $atelier)
<input wire:model="selectedAtelier" value="{{ $atelier->id }}"
type="checkbox"
id="{{ $atelier->id }}"><label>{{$atelier-name}}</label>
@endforeach
这很好用。 gebruiker 保存在 Gebruiker table 中,工作室保存在 pivot table.
中
编辑特定的 gebruiker 时,如何勾选保存在 pivot table 中的工作室复选框?
我将尝试根据您在此处共享的代码重现您需要的一些逻辑
// in component
public function someLoadMethodOnEdit()
{
$this->selectedAtelier = $this->gebruiker->ateliers()->pluck('id')->map(
function($group) {
return strval($group);
})->toArray();
}
// in blade
@foreach ($ateliers as $atelier)
<input wire:model="selectedAtelier" value="{{ $atelier->id }}"
type="checkbox" @if(in_array($atelier->id,$selectedAtelier)) checked @endif
id="{{ $atelier->id }}" wire:key="aterlier-checkbox-{{ $atelier->id }}"><label>{{$atelier-name}}</label>
@endforeach
我有一个 Gebruikers 模型(荷兰语用户)和一个 Ateliers 模型(荷兰语车间)。它们之间是多对多的关系。
当保存一个新的 Gebruiker 时,您可以查看该 gebruiker 正在参加的工作室。
在 Livewire 'controller':
public $selectedAtelier = [];
public $gebruiker;
public function saveGebruiker(){
$nieuwegebruiker = Gebruiker::create([
'first' => $this->gebruiker['first'],
'last' => $this->gebruiker['last'],
]);
$nieuwegebruiker->ateliers()->sync($this->selectedAtelier);
}
在组件中:
<input type="text" wire:model="gebruiker.first">
<input type="text" wire:model="gebruiker.last">
@foreach ($ateliers as $atelier)
<input wire:model="selectedAtelier" value="{{ $atelier->id }}"
type="checkbox"
id="{{ $atelier->id }}"><label>{{$atelier-name}}</label>
@endforeach
这很好用。 gebruiker 保存在 Gebruiker table 中,工作室保存在 pivot table.
中编辑特定的 gebruiker 时,如何勾选保存在 pivot table 中的工作室复选框?
我将尝试根据您在此处共享的代码重现您需要的一些逻辑
// in component
public function someLoadMethodOnEdit()
{
$this->selectedAtelier = $this->gebruiker->ateliers()->pluck('id')->map(
function($group) {
return strval($group);
})->toArray();
}
// in blade
@foreach ($ateliers as $atelier)
<input wire:model="selectedAtelier" value="{{ $atelier->id }}"
type="checkbox" @if(in_array($atelier->id,$selectedAtelier)) checked @endif
id="{{ $atelier->id }}" wire:key="aterlier-checkbox-{{ $atelier->id }}"><label>{{$atelier-name}}</label>
@endforeach