私はtitle_en、title_ru、content_en、content_ruであるデータベースに4つの列を作成しました。しかし、私は次に何をすべきか分かりません。データは正常にデータベースに送られますが、言語を切り替える方法とコントローラとモデルとビューで何を書き込むのか分かりません。Yii2基本フレームワークメッセージ言語
答えて
このチュートリアルから学びます。
https://code.tutsplus.com/tutorials/how-to-program-with-yii2-localization-with-i18n--cms-23140
あなたはjqueryのAjaxのリクエストで言語をswtichことがあります。
public function actionChangelang(){
$language = $_GET['lang'];
if($language =='en' || $language == 'uz' || $language == 'ru'){
Yii::$app->language = $language ;
Yii::$app->session->set('lang', $language); //or $_GET['lang']
}
$this->redirect('/'); // redirecting user to somewhere
}
その後、あなたはこのように、コントローラにクエリを記述可能性があります
ビューで...
$model = Yourmodel::find()->all();
...
//TODO
:
$lang = 'ru';
if (Yii::$app->language == 'uz')
$lang = 'uz';
if($lang=='uz'){
$title = $model->title_uz ;
$content = $model->content_uz ;
}else{
$title = $model->title_ru;
$content = $model->content_ru;
}
...
//TODO
echo $title;
echo $content;
親愛なるサルドール、別名yolini yordam.uz da menga o'rgattiz :-)、endi databaza yoli bilan qilishni bilmayapmanda 、マサランdatabazada table_uz、kegin table_ru deganコラムochib、kegin sayt rus tilida bo'lsa、ruscha chiqadigon qilishni bimayapman :-) –
mana tepada shu bo'yicha savol beribsizku! sizda qanday kiritiladigan datalar bo'lsa hammasi uchun 2 taコラムqilishiz mumkin bu bitta usul。 2 - usul:misol uchun post deganテーブルbor、タイトル、コンテンツ、言語、スラッグ、デュガンウスルラリボウラディ、スラグ - イキキタティルダハムビルキルビームズベラシズヴァシュウorqali postni 'language' ustuni bo'yicha zapros berib olaverasiz –
こんにちは男、ちょうど公式ドキュメントを読んで:これは一般的なガイドですhttp: //www.yiiframework.com/doc-2.0/guide-tutorial-i18n.htmlこれはデータベースメッセージソースhttp://www.yiiframework.com/doc-2.0/yii-i18n-dbmessagesource.html – soovorow
broです。 、私は公式の文書を理解することができなかった、bあなたがそれをする方法を知っているなら、私を助けてください、私はすぐにデータベースの多言語を作る方法を見つける必要があります –