Spatie Translatable Plugin and relationship fieldset

My Page model has a MorphOne relationship to the Seo model. The Seo model has columns like title and description.

In my PageResource i have a fieldset for the Seo relationship:

Forms\Components\Fieldset::make('seo')
            ->relationship(name: 'seo')
            ->schema([
                Forms\Components\TextInput::make('title')
                    ->label(__('SEO title'))
                    ->string(),

                Forms\Components\Textarea::make('description')
                    ->label(__('SEO description'))
                    ->string(),
              ]),


This works just fine. Until i add the Spatie Translatable Plugin.

I found out adding the relationship name to the translatable array on the page model made the language selector "work" on the related textInputs:
public array $translatable = ['title', 'seo'];

Now when i switch languages using the LocaleSwitcher on the create or edit screen, the inputs seem to store the data per language.

When i enter just 1 language, no issue, but when i set multiple language variables and save it, i get an error

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'seo' in 'field list'

Now all of a sudden the seo isn't stored as a relationship but as a column on the page model.

the raw query is:
update pages set title = ?, seo = ?, pages.updated_at = ? where id = ?

Any ideas would be welcome
Was this page helpful?