Mám projekt štrku s mnohými až mnohými vzťahmi a mnohými jazykmi. použil som Laravel-preložiteľné balíček pre viac jazykov.
Tento program ukladá veľké množstvo súborov s ich atribútmi.
Každý atribút je zdieľaný medzi niekoľkými súbormi. Každý atribút má však v každom súbore inú hodnotu.
Tabuľka a ich vzťah je ako táto fotografia: tabuľkový diagram
mal by som dať attribute_value
v ktorej tabuľke? Ďakujem
odpovede:
0 pre odpoveď č. 1pridať attribute_value
na attrib_file
stôl. Pretože pre každé spojenie so súborom attribute_value
by mali byť odlišné. Na druhej strane každý súbor ukladá počet hodnôt atribútov. Preto attrib_file
otočný stôl sa hodí najlepšie. Ako získať informácie z kontingenčnej tabuľky je uvedený v dokumentácia:
$attr = AppAttribute::find(1);
foreach($attr->files as $file) {
echo $file->pivot->attribute_value;
}
Uistite sa, že ste ho pridali ->withPivot("attribute_value")
koniec návratu $this->belongsToMany("AppModelsFile")
vo vašej metóde vzťahu. Malo by to byť niečo také v rámci atribút Model:
..
public function files() {
return $this->belongsToMany("AppModelsFile")->withPivot("attribute_value");
}