mirror of
https://github.com/stancl/tenancy-docs.git
synced 2025-12-12 18:24:03 +00:00
60 lines
1.4 KiB
Markdown
60 lines
1.4 KiB
Markdown
---
|
||
title: Livewire integration
|
||
extends: _layouts.documentation
|
||
section: content
|
||
---
|
||
|
||
# Livewire {#livewire}
|
||
|
||
Open the `config/livewire.php` file and change this:
|
||
|
||
```php
|
||
'middleware_group' => ['web'],
|
||
```
|
||
|
||
to this:
|
||
|
||
```php
|
||
'middleware_group' => [
|
||
'web',
|
||
'universal',
|
||
InitializeTenancyByDomain::class, // or whatever tenancy middleware you use
|
||
],
|
||
```
|
||
|
||
(Don't forget to import the middleware class.)
|
||
|
||
Now you can use Livewire both in the central app and the tenant app.
|
||
|
||
Also make sure to enable [universal routes]({{ $page->link('features/universal-routes') }}).
|
||
|
||
And if you're using file uploads, read the [Real-time facades]({{ $page->link('realtime-facades') }}) page of the documentation. Livewire uses real-time facades in the uploading logic.
|
||
|
||
if you are using InitializeTenancyByPath and Livewire
|
||
you wil need
|
||
|
||
config/livewire.php
|
||
```
|
||
'middleware_group' => [
|
||
'web',
|
||
InitializeTenancyByPath::class, // or whatever tenancy middleware you use
|
||
],
|
||
```
|
||
add in the tenant route group
|
||
```
|
||
Route::post('livewire/message/{name}', [HttpConnectionHandler::class, '__invoke']);
|
||
```
|
||
|
||
In Blade just after @livewireScripts:
|
||
|
||
```
|
||
@livewireScripts
|
||
<script>
|
||
window.livewire_app_url = '{{ tenant()->id}}';
|
||
</script>
|
||
```
|
||
|
||
And in case you are wondering about the config of Livewire, there is no need to change it. Just leave it as it is; null:
|
||
```
|
||
'asset_url' => null,
|
||
```
|