我有模型Banner和允许的语言环境数组。
我想要的是将Banner设置为多种语言,例如Banner可以在“ en”,“ ru”语言环境中显示,但在“ de”语言环境中不可见。
语言环境存储在配置文件-`app('config.allow_languages')
如何在不创建语言环境表和模型的情况下通过数据透视表与Banner和语言环境建立关系
答案 0 :(得分:1)
如果我理解正确,而没有创建其他模型/表,我将:
创建模型Banner,具有json / jsonb格式的“语言环境”列。
然后,在需要获取横幅的每个地方,使用where子句,例如:
Banner::whereJsonContains('locale', app('config.allow_languages'));
如果它能按您希望的方式工作,则可以在每次使用Banner模型时创建一个范围,使该“位置”在其中运行。