Я создал приложения laravel в Laravel 4 и Laravel 5, но на этот раз я решил написать все свои тесты, никогда ранее не писал тестов для простых приложений.Как я могу использовать __construct в соединении с контроллером в laravel
Вот мой класс счета - для иллюстрации
class Account extends Model
{
protected $customer_id;
protected $bookmaker_id;
protected $balance;
protected $profit;
public function __construct($customer_id, $bookmaker_id, $balance, $profit) {
$this->customer_id = $customer_id;
$this->bookmaker_id = $bookmaker_id;
$this->balance = $balance;
$this->profit = $profit;
}
}
Таким образом, все мои тесты блок работать нормально:
Мой маршрут правильно настроен на странице я хочу, чтобы отобразить
Route::get('/accounts', '[email protected]');
, но здесь все идет не так. На самом деле попытка запустить страницу для получения списка учетных записей является проблемой. Я знаю, что это больше связано с классом контроллера, но вот что у меня есть.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Account;
class AccountController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$accounts = Account::all();
return view('account.index', compact('accounts'));
}
}
Тогда я получаю эту ошибку -
ErrorException in Account.php line 14:
Missing argument 1 for App\Account::__construct(), called in /Applications/MAMP/htdocs/mb-app/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php on line 665 and defined
Может кто-нибудь сказать мне, как я должен быть настройки моего контроллера, пожалуйста? Пока я не добавил __construct() для моих модульных тестов, все было хорошо.
Спасибо.
спасибо за возвращение ... не уверен, что я следую хотя. То, что я пытаюсь сделать, это получить список всех учетных записей ... не будет ли $ accountModel просто новым экземпляром учетной записи? – dstewart101
Хм, ты прав. Что вы пытаетесь выполнить с помощью __construct? – aynber
__construct был настроен для установки метода setup() в phpUnit для модульного тестирования. я не особенно привязан к этому только, что я думал, что мне нужно, чтобы мои тесты реорганизовали их во что-то более управляемое. – dstewart101