Laravel-admin: How can I use with "dimsav/laravel-translatable" package?

Created on 21 Feb 2018  ·  4Comments  ·  Source: z-song/laravel-admin

  • Laravel Version: 5.6.*
  • PHP Version: 7.1
  • Laravel-admin: 1.5.*

Description:

Want to use multiple languages with https://github.com/dimsav/laravel-translatable, but don't know how to use laravel-translatable in form method.

Steps To Reproduce:

Most helpful comment

@manzhouya
Example:

$form->tab('Document Type', function (Form $form) {
    $form->display('id', trans('columns.id'));

    $form->text('name', trans('columns.name_locale', ['locale' => App::getLocale()]));
    $form->switch('use_pages', trans('columns.use_pages'));

    $form->display('created_at', trans('columns.created_at'));
    $form->display('updated_at', trans('columns.updated_at'));
})->tab('Translations', function (Form $form) {
    $form->hasMany('translationsexceptcurrent', trans('columns.translations'), function (Form\NestedForm $form) {
        $form->text('name', trans('columns.name'));
        $form->select('locale', trans('columns.locale'))->options(locale_options());
    });
});

in translated model:

public function translationsExceptCurrent() {
    return $this->translations()->where('locale', '<>', App::getLocale());
}

captura de pantalla 2018-08-16 a la s 08 55 47
captura de pantalla 2018-08-16 a la s 08 55 56

All 4 comments

@z-song 这个支持吗?

@manzhouya
Example:

$form->tab('Document Type', function (Form $form) {
    $form->display('id', trans('columns.id'));

    $form->text('name', trans('columns.name_locale', ['locale' => App::getLocale()]));
    $form->switch('use_pages', trans('columns.use_pages'));

    $form->display('created_at', trans('columns.created_at'));
    $form->display('updated_at', trans('columns.updated_at'));
})->tab('Translations', function (Form $form) {
    $form->hasMany('translationsexceptcurrent', trans('columns.translations'), function (Form\NestedForm $form) {
        $form->text('name', trans('columns.name'));
        $form->select('locale', trans('columns.locale'))->options(locale_options());
    });
});

in translated model:

public function translationsExceptCurrent() {
    return $this->translations()->where('locale', '<>', App::getLocale());
}

captura de pantalla 2018-08-16 a la s 08 55 47
captura de pantalla 2018-08-16 a la s 08 55 56

@luischavez

I tried it and it succeeded. Thank you!

@luischavez
Do you know any method to pass options for model method with hasMany?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

antranapp picture antranapp  ·  3Comments

piian picture piian  ·  3Comments

zhenyangze picture zhenyangze  ·  3Comments

amun1303 picture amun1303  ·  3Comments

cdhraesaemer picture cdhraesaemer  ·  3Comments