Skip to content

When exporting globals the code does not seem to look at the config #430

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
jurnskie opened this issue May 28, 2025 · 4 comments · May be fixed by #431
Open

When exporting globals the code does not seem to look at the config #430

jurnskie opened this issue May 28, 2025 · 4 comments · May be fixed by #431
Labels
bug Something isn't working

Comments

@jurnskie
Copy link

jurnskie commented May 28, 2025

Bug description

Hi, im running into a export problem for the ExportGlobals command (Statamic\Eloquent\Commands\ExportGlobals).

I have the following config for globals splitting up file based and eloquent:

  'global_sets' => [
        'driver' => 'file',
        'model' => \Statamic\Eloquent\Globals\GlobalSetModel::class,
    ],

    'global_set_variables' => [
        'driver' => 'eloquent',
        'model' => \Concept7\StatamicMultitenancy\Eloquent\Globals\VariablesModel::class,
    ],

When i run the export command it tries to load the data from the database, instead of first looking at the config what driver is used. So im getting a database error that it cannot find the corresponding table.

Image

How to reproduce

  1. Install the eloquent driver
  2. Config the driver with the following config:
  'global_sets' => [
        'driver' => 'file',
        'model' => \Statamic\Eloquent\Globals\GlobalSetModel::class,
    ],

    'global_set_variables' => [
        'driver' => 'eloquent',
        'model' => \Concept7\StatamicMultitenancy\Eloquent\Globals\VariablesModel::class,
    ],
  1. Add global sets via the CP
  2. Run the following export command: php please eloquent:export-globals

Logs

Environment

Environment
Application Name: Statamic
Laravel Version: 12.15.0
PHP Version: 8.4.7
Composer Version: 2.8.8
Environment: local
Debug Mode: ENABLED
URL: campus-coalitie.test
Maintenance Mode: OFF
Timezone: Europe/Amsterdam
Locale: nl

Cache
Config: NOT CACHED
Events: NOT CACHED
Routes: NOT CACHED
Views: CACHED

Drivers
Broadcasting: log
Cache: file
Database: mysql
Logs: stack / daily
Mail: log
Queue: sync
Session: file

Storage
public/storage: NOT LINKED

Locales
Installed: en, nl
LaravelLang\Lang\Plugin: 15.20.2
Locales Version: 2.10.0
Protected: en, nl
Publisher Version: 16.6.0

Filament
Blade Icons: NOT CACHED
Packages: filament, forms, notifications, support, tables
Panel Components: NOT CACHED
Version: v3.3.16
Views: NOT PUBLISHED

Livewire
Livewire: v3.6.3

Statamic
Addons: 4
Sites: 2 (EN, NL)
Stache Watcher: Enabled
Static Caching: Disabled
Version: 5.56.0 PRO

Statamic Addons
eminos/statamic-tabs: 1.2.0
rias/statamic-redirect: 3.10.9
statamic/eloquent-driver: 4.21.2
statamic/seo-pro: 6.7.0

Statamic Eloquent Driver
Asset Containers: file
Assets: eloquent
Blueprints: file
Collection Trees: eloquent
Collections: eloquent
Entries: eloquent
Forms: file
Global Sets: file
Global Variables: eloquent
Navigation Trees: eloquent
Navigations: file
Revisions: file
Sites: eloquent
Taxonomies: file
Terms: eloquent
Tokens: eloquent

Stack trace

[2025-05-28 13:37:13] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'campus_coalitie_productie_dump.global_sets' doesn't exist (Connection: mysql, SQL: select * from `global_sets`) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'campus_coalitie_productie_dump.global_sets' doesn't exist (Connection: mysql, SQL: select * from `global_sets`) at /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Connection.php:822)
[stacktrace]
#0 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Connection.php(776): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Connection.php(395): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#2 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3120): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#3 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3105): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3695): Illuminate\\Database\\Query\\Builder->{closure:Illuminate\\Database\\Query\\Builder::get():3104}()
#5 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3104): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#6 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(872): Illuminate\\Database\\Query\\Builder->get(Array)
#7 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(854): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#8 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(742): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#9 /Users/jurn/Sites/campus-coalitie/vendor/statamic/eloquent-driver/src/Commands/ExportGlobals.php(70): Illuminate\\Database\\Eloquent\\Model::all()
#10 /Users/jurn/Sites/campus-coalitie/vendor/statamic/eloquent-driver/src/Commands/ExportGlobals.php(48): Statamic\\Eloquent\\Commands\\ExportGlobals->exportGlobals()
#11 /Users/jurn/Sites/campus-coalitie/vendor/statamic/eloquent-driver/src/Commands/ExportGlobals.php(65): Statamic\\Eloquent\\Commands\\ExportGlobals->{closure:Statamic\\Eloquent\\Commands\\ExportGlobals::handle():47}()
#12 /Users/jurn/Sites/campus-coalitie/vendor/statamic/eloquent-driver/src/Commands/ExportGlobals.php(47): Statamic\\Eloquent\\Commands\\ExportGlobals->usingDefaultRepositories(Object(Closure))
#13 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Statamic\\Eloquent\\Commands\\ExportGlobals->handle()
#14 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::{closure:Illuminate\\Container\\BoundMethod::call():35}()
#15 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#16 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#17 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/Container.php(754): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#18 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#19 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Command/Command.php(279): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#20 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#21 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(1094): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#22 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(342): Symfony\\Component\\Console\\Application->doRunCommand(Object(Statamic\\Eloquent\\Commands\\ExportGlobals), Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#23 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(193): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#24 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#25 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\\Console\\Application->call('statamic:eloque...', Array, Object(Illuminate\\Console\\OutputStyle))
#26 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(361): Illuminate\\Foundation\\Console\\Kernel->call('statamic:eloque...', Array, Object(Illuminate\\Console\\OutputStyle))
#27 /Users/jurn/Sites/campus-coalitie/vendor/spatie/laravel-multitenancy/src/Commands/TenantsArtisanCommand.php(32): Illuminate\\Support\\Facades\\Facade::__callStatic('call', Array)
#28 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Spatie\\Multitenancy\\Commands\\TenantsArtisanCommand->handle()
#29 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::{closure:Illuminate\\Container\\BoundMethod::call():35}()
#30 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#31 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#32 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Container/Container.php(754): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#33 /Users/jurn/Sites/campus-coalitie/vendor/spatie/laravel-multitenancy/src/Commands/Concerns/TenantAware.php(33): Illuminate\\Container\\Container->call(Array)
#34 /Users/jurn/Sites/campus-coalitie/vendor/spatie/laravel-multitenancy/src/Models/Concerns/ImplementsTenant.php(84): Spatie\\Multitenancy\\Commands\\TenantsArtisanCommand->{closure:{closure:Spatie\\Multitenancy\\Commands\\Concerns\\TenantAware::execute():33}:33}(Object(Concept7\\StatamicMultitenancy\\Models\\Tenant))
#35 /Users/jurn/Sites/campus-coalitie/vendor/spatie/laravel-multitenancy/src/Commands/Concerns/TenantAware.php(33): Concept7\\StatamicMultitenancy\\Models\\Tenant->execute(Object(Closure))
#36 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Collections/LazyCollection.php(809): Spatie\\Multitenancy\\Commands\\TenantsArtisanCommand->{closure:Spatie\\Multitenancy\\Commands\\Concerns\\TenantAware::execute():33}(Object(Concept7\\StatamicMultitenancy\\Models\\Tenant), 0)
#37 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(824): Illuminate\\Support\\LazyCollection->{closure:Illuminate\\Support\\LazyCollection::map():807}()
#38 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(559): Illuminate\\Support\\LazyCollection->reduce(Object(Closure), 0)
#39 /Users/jurn/Sites/campus-coalitie/vendor/spatie/laravel-multitenancy/src/Commands/Concerns/TenantAware.php(34): Illuminate\\Support\\LazyCollection->sum()
#40 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Command/Command.php(279): Spatie\\Multitenancy\\Commands\\TenantsArtisanCommand->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#41 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#42 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(1094): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#43 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(342): Symfony\\Component\\Console\\Application->doRunCommand(Object(Spatie\\Multitenancy\\Commands\\TenantsArtisanCommand), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#44 /Users/jurn/Sites/campus-coalitie/vendor/symfony/console/Application.php(193): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#45 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#46 /Users/jurn/Sites/campus-coalitie/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1234): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#47 /Users/jurn/Sites/campus-coalitie/artisan(13): Illuminate\\Foundation\\Application->handleCommand(Object(Symfony\\Component\\Console\\Input\\ArgvInput))
#48 {main}

No response

@jurnskie jurnskie added the bug Something isn't working label May 28, 2025
@ryanmitchell
Copy link
Contributor

Can you provide the full error trace from your log file please?

@jurnskie
Copy link
Author

Can you provide the full error trace from your log file please?

Yes, i've added the stack trace

@ryanmitchell
Copy link
Contributor

Ok that error makes more sense - your screenshot had asset containers which confused me.

I've opened a PR here with the changes needed, but I'm going to wait until v6 to solve this, alongside #411 as there is a clear split between globals and variables at that point.

@jurnskie
Copy link
Author

Ok that error makes more sense - your screenshot had asset containers which confused me.

I've opened a PR here with the changes needed, but I'm going to wait until v6 to solve this, alongside #411 as there is a clear split between globals and variables at that point.

I'm sorry for the confusion, and thanks for the quick reply and PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants