私はLaravelで多言語アプリケーションを構築しています。ユーザーがログインし、選択したフィールドから優先言語(テーブル "言語")を選択してデータベースに保存する必要があります"users"の "language_id")をフィールドから選択するだけです。私は現在、フォームと送信ボタンなしでこれをどのように達成できるのか、考えていません。誰かが私にこのことを正しく行う方法を説明することができますか?選択値を保存するon Laravel
コントローラ:使用可能なすべての言語が変数に格納され、すべてのビューに送信されます。
namespace App\Http\Controllers;
use App\Language;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Support\Facades\View;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
public function __construct()
{
$languages = Language::all();
View::share('languages', $languages);
}
}
メニュー選択:言語を選択フィールドに移入foreachループは、コントローラを介して送信してください。
<li>
<select class="form-control" id="language" name="language">
@foreach ($languages as $language)
<option value="{{ $language->id }}">{{ $language->name }}</option>
@endforeach
</select>
</li>
データベース:「ユーザー」テーブル「LANGUAGE_ID」ここ
言語選択はログインフォームの一部ですか? – Jerodev