Ich habe viele, viele Beziehungen zwischen User
und Project
Laravel 5.3: Viele zu viele realtionship Daten
Realtionship Namen sind: User
Modell haben projects
und Project
Modell users
haben. Und sind richtig gebildet.
ich den folgenden Code für den Datentabellen bin mit:
public function handleProjects(Request $request)
{
$responseData = \App\Misc::handleDatatable([
"request" => $request,
"model" => "\App\Project",
"actions" => [
"delete" => function($records) {
foreach($records as $record) {
$record->delete();
}
return [
"status" => "OK",
"message" => "Successfully deleted the selected product types!",
];
},
],
"columns" => [
"title" => "title",
"users.username" => "users.username",
"level" => "level",
"users.username" => "users.username",
"created_at" => function($value) {
return $value->diffForHumans();
}
],
]);
return response()->json($responseData);
}
Notiere die "users.username" => "users.username",
letzten 8. Zeile, wie kann ich den Benutzernamen aus der users
Tisch zu bekommen?
Die Beziehungsnamen sind oben erwähnt.
Und es gibt mir die folgende Fehlermeldung:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'users.username' in 'field list' (SQL: SELECT projects.*, categories.name AS b74HW, subcategory.name AS rLTng, users.username AS fUfHg from `projects` left join `categories` as `categories` on `categories`.`id` = `projects`.`categories_id` left join `sub_category` as `subcategory` on `subcategory`.`id` = `projects`.`subcategory_id` group by `id` order by `projects`.`id` desc limit 15 offset 0)
Woher kommt diese 'handleDatatable' Funktion her? – Jerodev
@jerodev Es ist in der Steuerung, Es ist ein bisschen komplex zu erklären, im Grunde füllt es die Datentabellen, Es funktioniert mit 'OneToMany' Beziehungen, und arbeitet auch mit' OneToOne' Beziehungen. Alles, was ich zu tun habe, ist, die Daten aus der Benutzertabelle zu holen, die als "ManyToMany" gemocht werden. –
Sie verbinden die Tabelle "Benutzer" nicht mit Ihrer Abfrage. So sind Benutzer und auch users.username unbekannt. Dann können wir Ihre Frage nicht beantworten, ohne die Details der Funktion * handleDatatable * zu kennen. –