【问题标题】:1 form for multiple database with relationship1种具有关系的多个数据库的表格
【发布时间】:2018-10-14 10:50:36
【问题描述】:

我打算将用户的数据存储到只有 1 个表单的 2 个表中,这是它的样子,这些表具有 1 对 1 的关系

问题是我不知道如何获取profiles 表的user_id,如何获取?谢谢你

Form Register :

email       :
password    :
name        :
address     :


Users Table:

+------------+---------------+------+-----+---------+----------------+
| Field      | Type          | Null | Key | Default | Extra          |
+------------+---------------+------+-----+---------+----------------+
| id         | int(11)       | NO   | PRI | NULL    | auto_increment |
| email      | varchar(40)   | NO   |     | NULL    |                |
| password   | varchar(20)   | NO   |     | NULL    |                |
+------------+---------------+------+-----+---------+----------------+

Profiles Table:

+------------+---------------+------+-----+---------+----------------+
| Field      | Type          | Null | Key | Default | Extra          |
+------------+---------------+------+-----+---------+----------------+
| id        | int(11)        | NO   | PRI | NULL    | auto_increment |
| user_id   | int(11)        | NO   |     | NULL    |                |
| name      | varchar(40)    | NO   |     | NULL    |                |
| address   | varchar(70)    | NO   |     | NULL    |                |
+------------+---------------+------+-----+---------+----------------+

【问题讨论】:

  • 您的预期结果是什么,您尝试过什么?了解JOIN
  • 数据库不是表

标签: php mysql database laravel lumen


【解决方案1】:

在控制器中

先插入用户获取user_id

这是你的模特

public function addUsser()
    {
    $post = Input::All();

    $data = new Users;

    $data->email = $post['email'];
    $data->password = $post['password '];
    ...

    if($data->save()) {
        return Response::json(array('success' => true, 'last_insert_id' => $data->id), 200);
    }
}

在控制器中获取 id

$inserted_id = Model::addUsser($data);

$inserted_id 用于Profiles Table

【讨论】:

    【解决方案2】:

    使用内置的Laravel method

    $id = DB::table('users')->insertGetId([
        'email'      => $request->email, 
        'password'   => bcrypt($request->password), // or use a mutator
        'name'       => $request->name,
        'address'    => $request->address
    ]);
    

    【讨论】:

      猜你喜欢
      • 2019-08-31
      • 1970-01-01
      • 2020-10-08
      • 2011-05-03
      • 2018-06-09
      • 1970-01-01
      • 1970-01-01
      • 2013-09-06
      • 2020-10-04
      相关资源
      最近更新 更多