我的数据库中有两个表。第一个是工业,第二个是工业语言。
行业表
Schema::create('industries', function (Blueprint $table) {
$table->increments('id');
$table->string('industry_name', 100);
$table->integer('language_id')->default(1);
$table->timestamps();
});
Industry_Languages'表
Schema::create('industry_languages', function (Blueprint $table) {
$table->increments('id');
$table->integer('industry_id');
$table->string('industry_name', 200);
$table->integer('language_id');
$table->timestamps();
});
这是我的IndustryController
public function store(Request $request)
{
$industry = new Industry();
$industry->industry_name = $request->industryName;
$industry->save();
return response()->json($industry);
}
此功能仅将数据存储到行业表中,语言ID = 1,但我也希望将其存储到industry_languages'语言ID = 2的表(因为我的数据库中有一个语言表,包含2行数据:'印度尼西亚','英语')
示例:如果我输入' Halo'在industry_name领域,它将存储在我的行业表中,作为' Halo'在industry_name字段和' 1'在language_id字段中,它还将存储到我的industry_languages'表格'你好'在industry_name字段和' 2'在language_id字段中
我在翻译来自行业表格的请求时遇到问题。
我曾尝试使用Laravel google-translate
但是,它没有工作
答案 0 :(得分:2)
您是否尝试过使用https://github.com/spatie/laravel-translatable?
使用laravel-translatable
可以执行类似
public function store(Request $request)
{
$industry = new Industry();
$industry
->setTranslation('industryName', 'en', 'Hello')
->setTranslation('industryName', 'es', $request->get('industryName'));
$industry->save();
return response()->json($industry);
}
对于其他语言,您可能需要使用翻译包
答案 1 :(得分:0)
我尝试使用this pakcage
但是,它需要谷歌翻译API密钥,我认为这不是免费的。所以,我找到了一个不需要生成API KEY的包:statickidz/php-google-translate-free