error while trying to run artisan command with Artisan Facade - laravel

here's the code
Route::get('run-cmd', function() {
Artisan::call('make:controller HelloController');
});
and I wonder I'm getting this error...
InvalidArgumentException in Application.php line 549:
Command "make:controller HelloController" is not defined.
Did you mean one of these?
make:migration
make:controller
make:middleware
make:request
make:provider
make:console
make:event
make:model
make:command
what's wrong?

Replace
Artisan::call('make:controller HelloController');
with
Artisan::call('make:controller', [ 'name' => 'HelloController' ]);

Related

Illegal string offset 'name' error calling component from blade

In my Laravel 8 app I created new component with command
php artisan make:component Admin/Auth/loggedUserHasPermissions
and I have error with sending parameter to it from blade file :
Illegal string offset 'name' (View: /mnt/_work_sdb8/wwwroot/lar/AdsBackend8/resources/views/test.blade.php)
On row in resources/views/test.blade.php :
<x-logged-user-has-permissions :logged-user="getLoggedUser()" />
getLoggedUser is funnction in helper file.
and in app/View/Components/Admin/Auth/loggedUserHasPermissions.php
<?php
namespace App\View\Components\Admin\Auth;
use Illuminate\View\Component;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role;
class loggedUserHasPermissions extends Component
{
private $loggedUser;
private $hasAdminRole;
public function __construct($loggedUser)
{
$this->loggedUser = $loggedUser;
$this->hasAdminRole = false;
}
public function render()
{
I follow camelCase / kebab-case rules written here https://laravel.com/docs/8.x/blade#passing-data-to-components
running commands
php artisan config:cache
php artisan route:cache
php artisan cache:clear
php artisan view:clear
php artisan clear-compiled
composer dump-autoload
did not help
How it can be fixed?
Thanks!

Why does php artisan migrate fresh --seed is not working properly

Hi developers i have question regarding on php artisan migrate:refresh --seed VS php artisan db:seed I just wanted to ask because I have problem on php artisan migrate:refresh --seed, however when I use the php artisan db::seed it works properly
Now the data that I Created on my seeder is not seeding to the tables. I don't know why where the problem came from
Seeding: VehicleModelsSeeder
Seeded: VehicleModelsSeeder (0 seconds)
Here is my vehicle model seeder class
<?php
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
use App\Vehicle;
use App\VehicleModel;
class VehicleModelsSeeder extends Seeder
{
/**
* Run the database seeds.
*
* #return void
*/
public function run()
{
//
$vehicles = Vehicle::all();
foreach($vehicles as $vehicles_data) {
VehicleModel::forceCreate([
'name' => Str::random(5),
'vehicle_id' => $vehicles_data->id
]);
}
}
}
By default, the db:seed command runs the Database\Seeders\DatabaseSeeder class.
There is two solutions:
1. You need to call your additional seeder(s) in the default seeder's run method.
database/seeders/DatabaseSeeder.php
public function run()
{
$this->call([
VehicleModelsSeeder::class
]);
}
Then:
php artisan migrate:refresh --seed
2. You can specify which seeder you want to run with the --class flag, but in this case you need to run the refresh and the migrate commands separately:
php artisan migrate:refresh
php artisan db:seed --class:VehicleModelsSeeder
More info: Laravel database seeding documentation

Serialization of 'Closure' is not allowed Laravel routing?

When I launch command: php artisan route:cache I get message:
Serialization of 'Closure' is not allowed
There is only one closure in routes:
Route::group(['middleware' => ['auth']], function () {
})
I use php 7.1
Move the closure in routes/api.php to controller or comment it
// Route::middleware('auth:api')->get('/user', function (Request $request) {
// return $request->user();
// });
Then run
php artisan route:clear
php artisan route:cache
Laravel will try to cache routes by serializing to base64 encoded text in bootstrap/cache/routes.php, and closures can't be serialized

Laravel view not found - after clearing every cache

This is the function
public function waybills()
{
$user = Auth::user();
if(isset($user)){
$uid = $user->id;
$receives = Receive::where('receiver_code', $uid)->with('clearance')->get();
$archives = Archive::where('receiver_code', $uid)->get();
return view("dashboard.receive.waybills", compact('receives', 'archives'));
}
}
and this is the structure of the directory of files
I tried this following artisan codes
php artisan optimize --force
php artisan config:clear
php artisan route:clear
php artisan view:clear
and the error View [dashboard.receive.waybills] not found. persists

Laravel 5.5. InClassLoader.php line 444

I am using laravel 5.5 and am trying to make UsersContoller with this command.
php artisan make: controller UsersController --resource --model= User.
My error says:
include(C:\xampp\htdocs\My_laravel\vendor\composer....\app\User.php): failed to open stream: No scuh file or directory
See this video: http://youtu.be/AjQ5e9TOZVk?t=1m45s You can do php artisan list to view all commands, The command for generating REST-ful controllers is controller:make You can view the usage with: php artisan help controller:make
make:command => Create a new command class
make:console => Create a new Artisan command
make:controller => Create a new resource controller class
make:event => Create a new event class
make:middleware => Create a new middleware class
make:migration => Create a new migration file
make:model => Create a new Eloquent model class
make:provider => Create a new service provider class
make:request => Create a new form request class

Resources