Changelog
v11
v11.11.0
Change
\Astrotomic\Translatable\Traits\Relationship::translation()relation to use the newofMany- #297
v11.10.0
Drop PHP7 support
Drop Laravel 5.8 and 6 and 7 support
Add Laravel 9 support
Add PHP8.1 support
v11.9.1
Fix all methods visibility to allow customization - #198
v11.9.0
Add Laravel 8 support - #180
v11.8.3
Fix
\Astrotomic\Translatable\Exception\LocalesNotDefinedExceptionexception message
v11.8.1
Fix custom locale column name in
\Astrotomic\Translatable\Traits\Relationship::translation()method - #146
v11.8.0
Add Laravel 7 support - #128
v11.7.1
Add
.gitattributesto exclude files from archive - #126
v11.7.0
Add
translateOrFail()method - #114
v11.6.1
Fix PHP translation cascade deletion - #105
v11.6.0
Drop PHP 7.1 support
Drop Laravel 5.6 & 5.7 support
Add PHP side translation cascade deletion - #98 (disabled by default)
v11.5.2
Fix scope
orderByTranslation()to return all translations - #72
v11.5.1
Fix
getTranslationByLocaleKey()to usetranslationrelation if possible - #49
v11.5.0
Add rule parsing to
\Astrotomic\Translatable\Validation\RuleFactory- #56
v11.4.0
Add Laravel 6 support - #52
v11.3.0
Add
\Astrotomic\Translatable\Validation\RuleFactory- #34
v11.2.1
Fix duplicate checks of same locale - #40
v11.2.0
Add auto fallback locale finder - #36
v11.1.3
Fix conflict between attributes and locales during
fill()- #38
v11.1.2
Refactor
translationrelationship - #23
v11.1.1
Add missing return type-hints - #16
v11.1.0
Add missing dependencies
illuminate/contractsandilluminate/database- #9Add
\Astrotomic\Translatable\Contracts\TranslatableinterfaceSplit
\Astrotomic\Translatable\Translatableinto multiple traits - but use them in the main oneAdd
translationrelationship - #3Flag methods, not defined in interface as
@internalRename
getRelationKey()togetTranslationRelationKey()to prevent conflicts - the original one is@deprecatedand will be dropped in next major releaseUpdate the where translation scopes to unify them and remove duplicated code - #2
v11.0.0
Add PHP7 type-hints #557
migrate from dimsav to astrotomic
upgrade to
dimsav/laravel-translatable:v10.0.0run
composer remove dimsav/laravel-translatablerun
composer require astrotomic/laravel-translatablereplace
Dimsav\byAstrotomic\in your whole project (namespace change)
v10.0.0
Add
Dimsav\Translatable\Localeshelper class #574Fix
getRelationKey()#575drop custom save method in favor of saved event listener #567
v9
v9.5.0
Add
isEmptyTranslatableAttribute()method to allow custom empty attribute decision logic #576
v9.4.0
v9.3.0
Fix n+1 queries when updating non-translated model attributes #533
v9.2.0
Add support for Laravel 5.7 #518
v9.1.0
Do not call get translation with fallback locale and fallback enabled #502
Allow
translateOrDefault()andtranslateOrNew()to default to user app locale #500Change autoload translations behavior on runtime #501
Use fallback in
attributesToArray()#503Added
orderByTranslation()scope #504Example in doc for locale filtering in
whereTranslation()scope #487Fire saving event in every case #457
Allow to change default translation model namespace from config file #508
v9.0.0
Added support for Laravel 5.6 #435
v8
v8.1.0
Fixed error when fallback not available. #422
Fixed withTranslation query scope performance #417
Fixed fallback for country-based locales #417
Fixed empty attribute values #410
v8.0.0
Added support for Laravel 5.5 #394
v7
v7.3.0
Added compatibility with custom db connections. #366
v7.2.1
Fixed delete events not fired for translations. #361
v7.2.0
Added
replicateWithTranslations(). #346Added
orWhereTranslation()andorWhereTranslationLike()scopes. #338Added support for laravel auto-discovery. #359
Added tag for publishing the config file. #360
v7.1.0
Added fallback per attribute. #348
Added
getTranslationsArray()#347Fixed filling 'property:locale' format was not validating the locale. #356
v7.0.0
Added compatibility with Laravel v5.4.
Added default locale per model. #271
v6
v6.1.0
Filling a model now supports using the 'property:locale' format in keys. #314 For example:
$country->fill(['name:en' => 'Belgium'])Added config to skip translations in
toArray()for better performance when needed. #315
v6.0.1
Fix issue when trying to fetch a translation with a country based locale #264
v6.0.0
Translated fillable properties should only be defined in the translation model.
To update from version 5, move all the fillable properties belonging to a translation to the corresponding translation models.
Added
deleteTranslations()method for conveniently deleting translations
v5
v5.6.1
Added support for Lumen without Facades #259
Added support for Model accessors #257
Updated code style and added styleci to enforce it
v5.6.0
Added scope
notTranslatedIn()#235
v5.5.1
Fixed a bug in locale fallback on
toArray()
v5.5.0
Added Laravel 5.2 support
Dropped Laravel 5.0 support
Added scope
whereTranslationLike()#183Fire 'updated' event when saving translations. #190
setAttribute()returns the model itself, which is now the default in eloquent. #201
v5.4
Added compatibility with custom primary key #174
v5.3
Added
whereTranslation()scope #168
v5.2
Added option to override default locale #158
Added default value in
translatedIn()scope #148Added new scope
withTranslation()]to decrease the number of mysql calls made.Added documentation about scopes.
v5.1.2
Fixed db in tests is dropped and recreated to make tests more stable
Fixed bug when using syntax
$country->{'name:en'}and locale doesn't exist #150Method isTranslationAttribute() is now public #151
v5.1.1
Fixed compatibility with Lumen #121
Fixed making an attribute on a translatable model hidden does not hide it #133
v5.1.0
Added mutator/accessor translations using the format
$country->{'name:de'}thanks to @barryvdhAdded documentation in readme file
v5.0.1
Applied PSR-2 code style.
v5.0.0
Laravel 5 ready
Added configuration option for returning fallback translations
v4
v4.5.0
Added scope to list translated attributes in the current locale.
Force fire "saved" event when the original model is not saved, but the translation is #85
v4.4.0
Drops support for laravel 4.0.
Compatible with laravel 4.1 and laravel 4.2.
External config file.
Fallback issue fixed.
Added translated and translatedIn scopes.
Changed behavior: getting non existing translations with
getTranslation()used to return objects, nownullis returned.Translated attributes now shown when converting
toArray()ortoJson().Fixed bug:
fill()created empty translations even when translated attributes were not fillable.Added option to make translated attributes always fillable.
v4.3.0
The
Translationclass suffix default can be overridden in the app config. See 7ecc0a75dThe
app.fallback_localesetting can be overridden in each model separately. See #33Fallback translation is not returned if it is not defined.
v4.2.0
Fallback locale now is taken from
app.fallback_localeconfig key.
v4.1.1
Fixed issue with saving translations, caused by the update of the laravel core.
v4.1.0
Added fallback to default locale if translations is missing. #23
Added travis environment for laravel 4.2.
v4.0.0
Removed syntax
$model->en->namebecause conflicts may happen if the model has a property nameden. See #18.Added method
hasTranslation($locale). See #19.
v3.0.0
Fixed bug #7. Model's Translations were deleted when the model delete failed.
v2.0.0
Translatable is now a trait and can be used as add-on to your models.
100% code coverage
v1.0.0
Initial version
Translatable is a class extending Eloquent
96% code coverage
Last updated
Was this helpful?