问题标签 [laravel-translatable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Laravel 5.4 字段没有默认值,没有使用 create
非常奇怪的行为save()
。我不使用方法create
。这是创建新记录的代码:
但是,我收到了有关该title
字段的以下消息:
SQLSTATE[HY000]:一般错误:1364 字段 'title' 没有默认值(SQL:插入
statuses
(weight
,color
,suspension
) 值 (-9, #FFD700, 0))
所以这不是问题$fillable
!
我有翻译包Laravel Translatable。就在从模型中停止使用它时Status
,它保存得很好!
但是我有另一个模型,它以相同的方式使用相同的包,但它可以成功保存新记录!
我无法找出这个问题的根本原因。
更新
到目前为止,唯一可行的解决方案是'strict' => false,
在 MySQL 配置中进行设置。但是,我仍然无法理解发生了什么?!
php - Laravel-可翻译的主页 url 重复
嗨,我有多语言网站的问题。我有 laravel 5.5,我安装了 Laravel-Translatable。
当他要打开主页时,地址显示:project/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en /en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en/en
我现在不知道,为什么有一个地址。
我的中间件/Language.php
我的 web.php(路由)
和我的 PagesController.php
laravel - 使用 laravel 和翻译的多个内连接
我在使用可翻译库时遇到问题,我正在尝试按名称对公司进行排序,所以正如文档中所写,我需要使用内部连接,我尝试了这段代码,一切都很好,但是当我添加凭证_翻译时数据搞砸了,就像它来自不同的表或记录一样,我不知道我做错了什么:(
php - Laravel 可翻译 - “调用字符串上的成员函数 save()”
(更新)我使用 laravel-translatable 包并尝试插入带有翻译的行。尝试保存时,它给了我错误“调用字符串上的成员函数 save()”。
我用键和值循环一个对象,例如:"food": "Nourriture",
在循环内我选择 Translations 表:
我不完全按照文档做,本来是:
不同之处在于我选择了“group”和“key”列,并且我做了一个额外的“where”来指定 group = global。那里有什么问题吗?
然后我尝试检查是否已经存在翻译。如果没有,我插入翻译:
我使用 translateOrNew 而不是 translate ,否则我会收到错误:“从空值创建默认对象”。
似乎我无法执行该->save()
方法,因为它是一个字符串,而不是它应该是的模型实例。所以我想这条线有问题吗?:
但问题是什么?
laravel-5 - 具有动态语言环境的 Laravel 可翻译工厂播种
我想在不对语言环境进行硬编码的情况下制作可翻译模型的工厂。
我必须播种两个值,slug 是不可翻译的,而 title 必须从语言表中翻译成所有语言。
这是工厂文件:
这给了我一个错误:
未找到列:1054 未知列 'hr'
工厂创建的查询:
插入到
category_translations
(locale
,hr
,en
,de
,test
,category_id
) 值中 (0, hr 语言中第 1 类的标题, en 语言中第 2 类的标题, de 语言中第 3 类的标题, 测试语言中第 4 类的标题, 20))
git - Laravel 播种不适用于克隆的存储库
使用 laravel 模型工厂的数据库播种在我的本地(原始)repo/laravel 项目文件上完美运行,但是当我从 github 克隆远程时,播种会引发此错误:
未找到列:1054“字段列表”中的未知列“hr”(SQL:插入到
categories
(、、、、、)值(CATEGORY-1,hr 语言上的类别 1 标题,类别 1上slug
的标题hr
)de 语言, 2018-07-09 11:19:45, 2018-07-09 11:19:4 5))de
updated_at
created_at
在本地和克隆的 repo 上,迁移都没有问题,我使用 Laravel Translatable 包。字段 hr 和 de 是语言环境
我尝试推送到远程,但它说一切都是最新的,我还尝试手动将播种机和工厂从本地复制到远程/克隆文件夹,但它仍然不起作用。
(以下文件在原始和克隆的 repo 上是相同的)
数据库播种机:
分类播种机:
类别工厂:
使用应用\语言;
更新:
LanguageTableSeeder:
类别迁移:
php - spatie/laravel-translatable 5.6 无法翻译 slug 并抛出 404
我的数据库中有“课程”表,其中有 JSON 的“slug”列。例如:
现在,当我进入课程详细信息时,我会通过 slug 获取课程详细信息。这是控制器:
但是,有一个问题。如果我在课程详细信息中并且 URL 是:
然后我将网站语言更改为另一种语言,它不会翻译 slug。网址变成
它会抛出 404 页面。然而,它必须是
我怎么解决这个问题?这是route.php:
php - 在 null 上调用成员函数 hasTranslation() - Laravel
我正在使用 Laravel Translatables。但是当我执行时,我得到了一个像Call to a member function hasTranslation() on null
. 这是我的代码。
$slider->product
不为空且$locale
具有值'en'
此代码昨天运行良好,我所做的唯一更改是,从管理面板中,我刚刚从添加产品字段中删除了所需的验证。
php - Laravel 和 package spatie/laravel-translatable -> 对特殊字符进行搜索查询
我使用包 Spatie/laravel-translatable 将我翻译的数据以 json 格式存储在数据库中。
我有一个专栏标题:
如您所见,使用包,特殊字符被转换为 unicode。
当我想搜索时,它不起作用(这是合乎逻辑的,因为我正在寻找这个词équipe
但在数据库中它说\u00e9quipe
)
如何通过 Unicode 搜索以使其正常工作?
谢谢