У меня проблема с созданием новой учетной записи Transaction, и мне возвращают ошибку метода App \ Http \ Controllers \ TransactionsController :: Transfer не существует в TransactionsController
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;
use App\Http\Requests\TransactionsRequest;
use App\Traits\MakeTransactions;
use App\User;
use App\Transaction;
use DB;
class TransactionsController extends Controller
{
public function create()
{
$accno = auth()->user()->accno;
$account = DB::table('users')
->join('accounts', 'users.accno', '=', 'accounts.accno')
->select('users.*', 'accounts.*')
->get();
return view('dashboard.user.make_a_transfer.create', compact('account'));
}
public function store(TransactionsRequest $requestFields,$id)
{
$transactions = $this->Transfer($requestFields);
$account = Account::find($id);
$bal = $account->amt_paid + $transctions->amt;
$account->total = $bal;
$account->save();
return redirect('/make_transfer')->with('success', 'Transaction has been made');
}
public function saveTransaction($data)
{
return true;
}
}
, но в переводе ($ requestFields) я ссылаюсь на Traits / MakeTransactions. php
<?php
namespace App\Traits;
use App\User;
use App\Transactions;
trait MakeTransactions
{
public function Transfer($fields)
{
$transaction = Transaction::create([
'accno' => $user->accno,
'username' => auth()->user()->accno,
'reciever_name' => $fields->reciever_name,
'reciever_bank' => $fields->reciever_bank,
'reciever_accno' => $fields->reciever_accno,
'routing_no' => $fields->routing_no,
'amt' => $fields->amt,
'fund_option' => $fields->fund_option,
'description' => $fields->description,
]);
return $transaction;
}
}
Мне нужна помощь в понимании того, как создавать новую транзакцию каждый раз, когда пользователь выполняет перевод и обновляет учетную запись $. -> всего , добавив $ account-> amt_paid и $ transctions-> amt $ bal на сайте. Модель транзакции имеет много отношений с пользователем.