Laravel Collection funktioniert nicht richtig


user3142452

Ich habe ein Problem mit meiner Sammlung

 $tasks = Bear::all();
 $val = new Collection([]);
 foreach($tasks as $tas){
     $val ->push($tas->id);
 }

 $tasks1 = BearPic::whereIn('bear_id',$val)->get();
 $val2 = new Collection([]);
 foreach($tasks1 as $tas){
     $val ->push($tas->bear_id);
 }

Mein Echo auf valeinem ist

[10,11,12,10,10,11,11,12,12]

Und weiter tasks1ist

[{
    "id": 1,
    "bear_id": 10,
    "picnic_id": 1,
    "created_at": null,
    "updated_at": null
}, {
    "id": 2,
    "bear_id": 10,
    "picnic_id": 2,
    "created_at": null,
    "updated_at": null
}, {
    "id": 3,
    "bear_id": 11,
    "picnic_id": 1,
    "created_at": null,
    "updated_at": null
}, {
    "id": 4,
    "bear_id": 11,
    "picnic_id": 2,
    "created_at": null,
    "updated_at": null
}, {
    "id": 5,
    "bear_id": 12,
    "picnic_id": 1,
    "created_at": null,
    "updated_at": null
}, {
    "id": 6,
    "bear_id": 12,
    "picnic_id": 2,
    "created_at": null,
    "updated_at": null
}]

Die zweite Sammlung gibt leer zurück. Was könnte das Problem sein? Ich bin ziemlich neu in Laravel. Dies ist ein Tutorial

Rahul Govind

Die zweite Sammlung val2ist einfach leer, weil Sie die Werte auf valdie erste Sammlung anstatt verschieben val2.

Wenn Sie darauf bestehen, keine Joins zu verwenden und an Sammlungen zu arbeiten, pluckist dies in der Tat eine schnellere Lösung.

$tasks = Bear::all();
$val = $tasks->pluck('id');

$tasks1 = BearPic::whereIn('bear_id', $val)->get();
$val2 = $tasks2->pluck('bear_id');

Verwandte Artikel


laravel firstOrCreate funktioniert nicht richtig?

Stephan-v Ich importiere einige Daten mit der foursquare-API. Meine Datenbank enthält mehrere Duplikate von foursquare_id. Mache ich hier etwas falsch mit dem Code? Ich dachte, die Art und Weise, wie dies eingerichtet ist, überprüft die Datenbank auf den Spalt

Laravel route () funktioniert nicht richtig

Sanjay Ich erstelle eine cms-Anwendung, die nur Benutzer registriert und in der Benutzer Beiträge erstellen können. Das Problem ist in route(). Beim Definieren eines route()Hyperlinks in Blade-HTML funktioniert dies nicht. Route: Route::resource('/admin/users'

onDelete () funktioniert in Laravel nicht richtig

Dhruv Koshiyar Ich habe nach diesem Problem gesucht und eine Lösung gefunden, die nur die Speicher-Engine ändern = InnoDB, aber die Zeile meines nachfolgenden Kindes wird immer noch nicht gelöscht. Meine Modellhierarchie ist .... Board -> Task -> Card -> [comm

finde nicht richtig in Laravel funktioniert

Maria Almudena Garcia Fraile F. Ich habe hier ein leichtes Problem, aber ich stecke hier am Geldautomaten fest. Ich kann nicht verstehen, warum ein einfaches Model::find($id)nicht funktioniert. Ich habe eine neue Bewerbung. Ich habe überprüft, ob die Anwendung

Laravel Collection push () funktioniert nicht richtig

Vahn Marty Cagalawan Ich versuche, einen Artikel in einer Sammlung basierend auf dem Datumsbereich zu duplizieren. Zum Beispiel habe ich einen JSON davon: { "title": " 200", "start": "2017-12-20", "endx": "2017-12-25", "equipment": "Chairs", "quantity": 200 }

Zählung funktioniert nicht richtig. Laravel

Anon Ich versuche, die Anzahl der an meine Formulare angehängten Dateien zu zählen. Nachfolgend mein HTML-Code. <label class="control-label">Select Images</label> <input id="image" name="image[]" multiple type="file"> Ich habe folgendes zum Zählen verwendet.

Middleware in Laravel funktioniert nicht richtig

Aman Sharma | Ich versuche, Middleware auf meinen Routen wie folgt anzuwenden: Route::get('twitterlogin','TwitterController@gettwitterlogin'); Route::post('twitterlogin','TwitterController@posttwitterlogin'); Route::group(['middleware'=>'auth'],function()

Suchabfrage funktioniert in Laravel nicht richtig

Shiva Ganesh public static function searchSubmissions($request, $candidateIds = array(),$isscontact = NULL){ $querys = DB::table('submissions')->select('submissions.*'); if ( Input::has('candidatename') and $request->input('candidatename') != NULL){

Forelse funktioniert in Laravel nicht richtig?

irham dollah Meine Laravel-Version ist 5.4.36. Ich möchte verwenden forelse, um eine Nachricht anzuzeigen, wenn die Bedingung nicht erfüllt ist. @forelse ($items as $item) <p> @if ($item->quantity<$item->minimum_no) <span class="label label-dan