Stancl/Аренда — Как автоматически запускать миграции при создании нового арендатора?

#php #laravel #multi-tenant

Вопрос:

Когда я создаю нового арендатора, миграции для нового арендатора не выполняются, и мне было интересно, как я буду автоматически запускать миграции для вновь созданного арендатора после его создания. Существует ли команда ремесленника, которая должна выполняться в фоновом режиме, чтобы она работала? Вот мой код контроллера до сих пор, когда поступает запрос на создание арендатора.

 public function store(Request $request)
    {
        $this->validate($request, [
            'company' => 'required',
            'domain' => 'required|unique:domains',
            'name' => 'required',
            'email' => 'required|unique:users,email',
            'password' => 'required|confirm'
        ]);
        $tenant_id = '-' . Str::slug($request->company, '-');
        $domain = $request->domain . '.' . 'saas.test';

        $tenant = Tenant::create([
            'id' => $tenant_id
        ]);


        $tenant->createDomain([
            'domain' => $domain
        ]);

        $tenant->run(function()
        {
            User::create([
                'name' => $request->name,
                'email' => $request->email,
                'password' => bcrypt($request->password)
            ]);
        });

        tenancy()->initialize($tenant);

        return redirect($domain);
    }
 

Ответ №1:

Попробуйте запустить команду artisan в своем методе контроллера: Artisan::call(‘tenants:migrate’);

Комментарии:

1. ничего не делает.

2. я заставил его работать, я только что сделал Artisan::call(«арендаторы:мигрируют»)

3. Моя вина. В следующий раз я буду более сосредоточен на ответе