Próbuję zwrócić obiekt Contract
i wszystko to jest związane Project
. Mogę wrócić wszystkich Contract
s, ale gdy próbuję dostać Kontrakt na Project
, dostaję „class«EstimateProject»nie znaleziono” błąd. Uruchomiłem composer dump-autoload
, aby ponownie wczytać odwzorowania klas, ale nadal dostaję błąd. Jakieś pomysły? Oto moja klasa setup:klasa laravel Nie znaleziono z jeden-do-wielu
EDIT: Chciałem tylko dodać, że LaravelBook\Ardent\Ardent\
jest przedłużeniem laravel za model.php. Dodaje ona walidację do modelu w funkcji Save
. Rozszerzyłem rozszerzenie kolejnej wtyczki, którą dodałem, która jest wersją MongoDB Eloquent ORM.
EstimateContract.php
<?php namespace Test\Tools;
use LaravelBook\Ardent\Ardent;
class EstimateContract extends Ardent {
// This sets the value on the Mongodb plugin's '$collection'
protected $collection = 'Contracts';
public function projects()
{
return $this->hasMany('EstimateProject', 'contractId');
}
}
EstimateProject.php
<?php namespace Test\Tools;
use LaravelBook\Ardent\Ardent;
class EstimateProject extends Ardent {
// This sets the value on the Mongodb plugin's '$collection'
protected $collection = 'Projects';
public function contract()
{
return $this->belongsTo('EstimateContract', 'contractId');
}
}
EstimateContractController.php
<?php
use \Test\Tools\EstimateContract;
class EstimateContractsController extends \BaseController {
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
$contracts = EstimateContract::all();
echo $contracts;
foreach($contracts as $contract)
{
if($contract->projects)
{
echo $contract->projects;
}
}
}
}
spróbuj umieścić 'use \ Test \ Tools \ EstimateProject;' w 'EstimateContractController.php' –
@TryingTobemyself Niestety, już próbowałem, że bezskutecznie. – Thelonias
spróbuj umieścić 'Użyj \ test \ Tools \ EstimateProject;' w 'EstimateContract.php' –