问题标签 [laravel-models]
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.
laravel - 如何使用 Laravel 中的模型优化此查询
实际需求。Select * from User, Student_basicinfo,Student_programs where User.id=student_basicinfo.student_id,user.id=student_programs.student_id;
我想将此查询与模型方法一起使用,但我不知道如何。
有 3 个不同的表 student_id 在用户表中是主要的,但在其他表中作为外键。
laravel - 我在 laravel-modules 中定义的路由出错
在 Laravel 框架 6.18.35 中,我使用“nwidart/laravel-modules”:“^7.2”,并且在定义路由中写入的方法时出错。
在 Modules/Pages/Routes/web.php 我有:
它使用以下方法引用控制器 Modules/Pages/Http/Controllers/Admin/PageTypesController.php:
使用模板 Modules/Pages/Resources/views/admin/page_types/index.blade.php,它具有参考:
这引发错误:
我尝试了几种设置路线的方法,但都失败了。
修改#2: 我看到路线:
我想知道为什么有这么多 "{admin}/" ?Modules/Pages/Routes/web.php 中的内容:
哪个是正确的语法?
谢谢!
laravel - Laravel 主动发货方式
桌子:
模型:
我想通过使用这样的模型功能只显示活跃的
但后来我得到
错误 调用 bool 上的成员函数 addEagerConstraints()
我做错了什么还是不可能以这种方式做到这一点?
laravel - Laravel 路由模型绑定返回帖子的虚假所有者
早上好/下午/晚上好!
我有 2 个模型,用户和帖子
用户.php
我在用户表中有两条记录
Post.php
我在帖子表中有一条记录
在我的路线
如您所见,我为 Useruser_name
和 Post使用 Route 模型绑定slug
因此,当我访问路线时,例如:
用户 megamanx 是帖子的所有者(test-first-post)
但是,当我尝试将用户参数传递给其他用户时,例如:
并且所有者帖子名称更改为 black_zero,但他不拥有该帖子
那么如何解决这个问题呢?我希望当用户尝试将 , 更改user_name
为其他内容时,返回 404。因为只有用户megamanx
自己的帖子test-first-post
我总是对批评持开放态度,因为我想成为一个更好的开发人员,如果上面的方法(路线,模型等)有任何错误,请纠正我!谢谢(·∀·)ノ</p>
英语不好见谅( ̄▽ ̄*)ゞ</p>
提前致谢!
laravel - Laravel 类型提示,模型保存时 id 返回 null
我正在尝试使用类型提示来存储值。
但是,Id 返回 null。
php - laravel 模型修改器不访问定义的字段
我正在尝试定义一个模型突变器
并在测试控制器上,尝试
不幸的是,它不起作用;该值仍然不是数组(序列化)
我想访问该字段content
并反序列化该字段的值,以便在检索时自动获取一个数组,但它不起作用。
laravel - 无法使用 assertSet 测试 laravel livewire 模型隐藏属性
我有一个简单的 LIvewire 组件,其中包含一个用于创建新用户的表单,并且它可以工作,我可以知道,因为在项目已经进入阶段后我被要求编写测试。
Livewire 组件在持久化之前使用一个new User
实例(非持久化,即user->exists
is false
)来存储插入的数据,并且模型通过受保护的数组user
隐藏密码属性。$hidden
现在,我可以在本地环境中通过表单页面成功创建新用户,但是在测试时,它给了我错误。
考试
错误
我发现了什么
通过表单页面设置我的组件用户实例很好,因为livewire将它识别为a model
,所以做类似的事情user->password = 'password'
,而当从测试中设置它时,set()
它使用访问运算符访问它的属性,因为它是一个数组,即:user['password] = 'password'
。
注释掉$hidden
数组中的密码条目使测试通过。这将解释属性设置的差异。
结论
由于该$hidden
数组旨在在其数组/json 表示中隐藏模型属性,因此它不应该干扰自动化测试,而且在使用 Livewire 自己的方法时,所以对我来说这看起来像一个 LIvewire 错误。
帮助
有没有人遇到过这个错误?
更新#1
为此,我在 Livewire github 页面上打开了一个问题。
laravel - Laravel ManyToMany 关系正在反转表名
我需要让帖子接受尽可能多的语言,所以我有两个模型post
和 language
帖子模型:
在我的语言模型中:
迁移后:
语言迁移:
我还创建了 post_language_table 迁移来连接帖子和语言:
在我的控制器中:
但是当我尝试将新记录插入到 tha 数据库时,此错误显示:
所以问题是由于某种原因交换了表名!
laravel - Laravel: active column that behave like softdelete
I have a model accounts in Laravel that uses Softdeletes.
Beside that, I want another column called active, that behaves kinda the same. If its sets to XXX then all Account::
calls shouldnt include them in the return. Until I set the active value to YYY, after this, they should be included.
Is there any way to do this?
I want to set the XXX and YYY values by my own. So I could say return only if active = 1 or active = whatEverIWant
Edit: I know I could do that by checking the value at every call, but I already use the accounts at a lot of places and dont want to add it everywhere