Renommer la relation Laravel avec le même nom dans les résultats
P粉163951336
P粉163951336 2023-12-15 09:40:36
0
2
564

Ici, vous pouvez voir que j'ai deux car_model champs de table principaux et noms de relation :

AppModelsProduct {#1478 ▼
  #connection: "mysql"
  #table: "products"
  ...
  #escapeWhenCastingToString: false
  #attributes: array:21 [▼
    "id" => 1
    "company_id" => 1
    ...
    "car_model" => "test"
    ...
  ]
  #original: array:21 [▶]
  ...
  #relations: array:5 [▼
    "company" => AppModelsCompany {#1506 ▶}
    "car_model" => AppModelsCarModel {#1508 ▼
      #connection: "mysql"
      #table: "car_models"
      #attributes: array:6 [▼
        "id" => 1
        "title" => "test"
        "created_at" => ":07:25"
        "updated_at" => ":07:58"
      ]
      ...
      +mediaConversions: []
      +mediaCollections: []
      #deletePreservingMedia: false
      #unAttachedMediaLibraryItems: []
    }
    ...
}

Comment puis-je obtenir les données relationnelles lorsque j'essaie d'obtenir la car_model 相关关系并同时拥有 car_model relation associée et que j'ai également

 ? Par exemple :

$products->first()->car_model->title
产品

Modèle :

    public function car_model(): BelongsTo
    {
        return $this->belongsTo(CarModel::class);
    }

et ma requête :

$this->products = Product::with(
    [
        'car_model',
    ]
)->get();
🎜
P粉163951336
P粉163951336

répondre à tous(2)
P粉555682718

Je vous suggère de renommer la relation en car_models ou quelque chose d'autre que car_model :

public function car_models(): BelongsTo
    {
        return $this->belongsTo(CarModel::class);
    }

Et la requête peut être modifiée comme suit

$this->products = Product::with(
    [
        'car_models',
    ]
)->get();

Puis reviens

$products->first()->car_models->title
P粉145543872

J'ai trouvé la solution. Visitez object 转换为 array 后,我可以将 car_model 作为 relationship à :

$i=$products->first()->toArray();
echo $i['car_model']['title'];

ou

echo ($products->first()->toArray())['car_model']['title']
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!