草庐IT

eloquent

全部标签

php - 对保存和更新使用相同的方法是不好的做法吗?

我正在使用laravel但这并不重要,当您使用laravel命令行工具创建Controller时,它会在其中放置4个默认函数用于创建和更新。创建和存储保存editandupdate井update!这就是laravel对ShopController的建议。classShopControllerextendsController{publicfunctioncreate(){//returncreateview}publicfunctionstore(Request$request){//saveashop}publicfunctionedit($id){//findashop,retur

php - Laravel 获取没有附加属性的模型

我正在使用Laravel5.3和模型Post,我有一个附加属性:/**toJson*/protected$appends=['count'];还有神奇的方法:publicfunctiongetCountAttribute(){returnOffer::where('id','=',$this->id)->count();}所以,当我得到一个像Post::get()这样EloquentPost模型,并用例如json获得返回时,我总是有这个属性count在我的对象中。如何指定我是否需要这个或另一个附加属性? 最佳答案 我检查了Eloqu

php - 如何在 Laravel 模型中编写 NotMapped 实体?

我是laravel的新手,因此我的问题对某些人来说可能很奇怪。好吧,我的问题是如何在LaravelModel类中编写一个实体,该实体在迁移后不会在数据库中创建任何字段。例如classJobseekerModelextendsModel{useSoftDeletes;protected$table='dbl_jobseekers';protected$primaryKey='id';protected$fillable=['FirstName','MiddleName','LastName','Dob','Education','DesireField','Skill','Special

php - 如何在 Laravel Form Facade 中使用关系值?

我想在模型与Form::label的关系上使用属性值和Form::text.Form助手已从Laravel中删除,所以我使用'Form'=>'Collective\Html\FormFacade'相反。这是Order中的关系型号:belongsTo('\App\Models\Account_number','product_id','id');}}这是带有Form的Blade模板.account_number中的文字将显示:{"id":4,"user_id":52,"account_type":"alipay","account_no":"xxxxxx","account_name":

php - Eloquent Laravel - 仅当关系存在时才检索结果

我正在尝试检索分配有轨道的流派列表,我正在使用whereHasEloquent查询,但感觉有点迷茫。我有以下内容//modelpublicfunctionworkingGenre(){$this->whereHas('tracks',function($query){$query->where('');});return$this->tracks()->first();}//controller(whereiampassingvariablesetc)$genres=Genre::with('tracks')->get();//myview@foreach($genresas$genr

php - Laravel UTF-8 到数据库

我正在使用Eloquent将一个新人save()到我的数据库中。人员姓名包含特殊字符é且未提交。这是我的步骤和结果。echoInput::get('firstname');//Miguél这给了我这个米格尔当我开始使用eloquent时,会发生以下情况。$person=newPerson();echo$person->firstname=Input::get('firstname');这会产生以下结果咪咕儿知道可能出了什么问题吗?这些是我在laravel中的配置设置这是我在phpmyadmin中的数据库谢谢 最佳答案 我认为它与数据

php - 自定义 Laravel 关系?

假设情况:假设我们有3个模型:用户角色权限我们还假设User与Role具有多对多关系,而Role与权限。所以他们的模型可能看起来像这样。(我故意让它们简短。)classUser{publicfunctionroles(){return$this->belongsToMany(Role::class);}}classRole{publicfunctionusers(){return$this->belongsToMany(User::class);}publicfunctionpermissions(){return$this->belongsToMany(Permission::cla

php - Laravel 5.4 - 'updateOrCreate' 方法。检查记录是否为 'updated' 或 'created'

使用updateOrCreate方法,有没有办法知道记录是更新还是创建?更新:我需要使用此功能为创建的记录返回201,或为更新的记录返回204。谢谢。 最佳答案 由于updateOrCreate返回模型实例。https://github.com/laravel/framework/blob/5.4/src/Illuminate/Database/Eloquent/Builder.php#L374您可以使用以下方法检查最近是否创建了记录:$instance->wasRecentlyCreatedhttps://github.com/l

php - Laravel:如何通过键 ID 获取单个数据透视行

我在User和NotificationEloquent模型上设置了多对多关系。这样我就可以访问数据透视表-user_notifications-如下所示:$user=User::find(1);foreach($user->notifications()as$n){echo$n->pivot->created_at;}这将为ID=1的用户提供数据透视表中的所有created_at字段值。如果我需要只有一个数据透视行,比方说notification_id=2行怎么办?有没有办法将pivot与where或has结合起来?是否可以在不循环$user->notifications()的情况下完

php - Laravel 查询生成器返回对象还是数组?

我正在使用Laravel构建一个非常简单的网络应用程序。我构建了两个独立的Controller,每个Controller返回两个独立的View,如下所示:配置文件Controller:classProfileControllerextendsBaseController{publicfunctionuser($name){$user=User::where('name','=',$name);if($user->count()){$user=$user->first();$workout=DB::table('workouts')->where('user_id','=',$user-