当前位置: 首页 > 知识库问答 >
问题:

Laravel雄辩的ORM插入

左丘兴生
2023-03-14

在有说服力的ORM上,是否有一种较短的方法在Laravel中插入数据?

目前我正在这样做:

$newCustomerGsale = new CustomersGsale();
$newCustomerGsale->email = $gsalesCustomer->getEmail();
$newCustomerGsale->customerno = $gsalesCustomer->getCustomerNumber();
$newCustomerGsale->created = $gsalesCustomer->getCreated();
$newCustomerGsale->company = $gsalesCustomer->getCompany();
$newCustomerGsale->firstname = $gsalesCustomer->getFirstname();
$newCustomerGsale->lastname = $gsalesCustomer->getLastname();
$newCustomerGsale->save();

就像你看到的,所有的列都像属性一样命名。

我知道您可以将$request对象与all()函数和fetch()一起使用。但是我从另一个对象(soap服务器)获取数据。

有没有办法转换这个?也许在模型上?

共有2个答案

汤枫涟
2023-03-14
//MyControllerClass
public function store(myCustomValidator $request){
  CustomersGsale::insert($request->all());
}

//myCustomValidator class
public function rules(): array
{
    return [
        'email' => 'required|numeric',
        'customerno' => 'required',
        'created' => 'required',
        'company' => 'required',
        'firstname' => 'required'
        'lastname' => 'nullable'
    ];
}

试试上面的方法,希望对你有用。

贡威
2023-03-14

你的控制器

假设Customer sGsell是您的模型

public function store(CustomersGsaleFormRequest $request)
{
    CustomersGsale::create($request->all());
}

CustomersGsaleFormRequest。phpLaravel表单请求验证

public function rules()
{
    return [
        'email'         => 'required|email',
        'customerno'    => 'required',
        'created'       => 'required',
        'company'       => 'required',
        'firstname'     => 'required'
    ];
}

sale.php模型

属性和列应该相同。如果使用create方法存储数据,则需要在模型上指定fillebleguarded属性

class CustomersGsale extends Model 
{
    protected $fillable = [
        'email', 'customerno', 'created', 'company', 'firstname', 'lastname'
    ];
}
 类似资料:
  • 如何使用laravel雄辩的ORM关系在多个表中发出一个插入请求。即 表1:用户 id 姓名 电子邮件 表2:员额 id 表3:图像 id 用户id 邮政id 图像名称 关系 表id引用了其他两个表中的 表与

  • 如何使用雄辩的ORM在Laravel中执行批量数据库插入? 我想在拉威尔完成这一点:https://stackoverflow.com/a/10615821/600516 但是我得到了以下错误。 SQLSTATE[HY093]:无效参数编号:混合命名参数和位置参数。

  • 在发布这篇文章之前,我做了很多研究。 我得到以下错误时,试图插入一个记录到PostgreSQL使用Laravel雄辩的ORM。 这是错误: 这是数据库表创建模式: 这就是我试图执行的代码: 我创建了一个模型类FbPostShareCount扩展雄辩。 我知道laravel不支持复杂的键,但当我使用MySQL时,这个问题并没有发生

  • 我正在编写php代码,对于当前的项目,我正在使用laravel框架(带有雄辩的ORM)。在这个项目中,我创建了两个表:用户和任务。我想在这些表之间创建一个“一对多”的关系。因此,一个用户可以有许多任务。在Tasks类中,我创建了方法所有者(): 但是当我以前得到用户名的时候 我得到这个异常:未定义的属性:illumb\Database\Eloquent\Relations\BelongsTo::$

  • 嗨,我正在学习laravel。我使用雄辩的ORM删除方法,但我得到了不同的结果。不是真的或假的,而是空的。我设置了一个资源路由,在UsersController中有一个销毁方法。 但是我总是得到一个响应{“status”:“0”,“msg”:“failed”},数据库中的记录被删除。 然后我使用dd($res)。它在页面中显示null。 但是从课程中我学习到它返回一个布尔值true或false。

  • 问题内容: 我们如何使用雄辩的ORM在Laravel中执行批量数据库插入? 问题答案: 您可以使用。 例如: