简体   繁体   中英

Laravel 5 relationships hasOne save()?

I have two tables Projects and Galleries . Project has one gallery. In galleries table I have a foreign key project_id .

Schema::table('galleries', function (Blueprint $table) {

            $table->integer("project_id")->unsigned()->nullable()->default(null);

            $table->foreign("project_id")
                    ->references("id")
                    ->on("projects")
                    ->onDelete("set null");

        });

In Project model I have a function that gets the gallery associated with the project:

public function gallery()
  {
    return $this->hasOne("App\Gallery");
  }

When creating new project, user selects from drop down the gallery then when saving a new project, how can I update galleries table to use newly created projects_id

$gallery_id = 2; // user selected gallery 2

$project = new Project();
$project->title = "new project";
$project->save(); 

Try the following:

$gallery_id = 2; // user selected gallery 2

$project = new Project();
$project->title = "new project";
$project->save(); 

$gallery = Gallery::find($gallery_id);
$gallery->project_id = $project->id;
$gallery->save();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM