Php laravel将数据从一个表传递到另一个表

Php laravel将数据从一个表传递到另一个表,php,database,laravel,eloquent,Php,Database,Laravel,Eloquent,所以我有一个表单可以输入数据。该值来自我提供的一个数据库。我可以从blade.php中获取值,但需求需要从db中获取。表单会将数据发送到主数据库。我已经完成了视图和工作。但当我想将数据提交到主数据库时,麻烦就来了 -主db=blogs目标列='sistem' -选项db=sistems source column='nama' 目标是将“nama”的价值传递给“sistem” 这是视图窗体 <form action="/" method="post" enctype="multipart/

所以我有一个表单可以输入数据。该值来自我提供的一个数据库。我可以从blade.php中获取值,但需求需要从db中获取。表单会将数据发送到主数据库。我已经完成了视图和工作。但当我想将数据提交到主数据库时,麻烦就来了

-主db=blogs目标列='sistem'

-选项db=sistems source column='nama'

目标是将“nama”的价值传递给“sistem”

这是视图窗体

<form action="/" method="post" enctype="multipart/form-data">
  // .......
  // .......
          <select name="sistem[]" id="tag_select">
              <option value="0"> Tidak Ada </option>
              @foreach ($sistems as $sistem)
                  <option value="{{$sistem->id}}"> {{$sistem->nama}}</option>
              @endforeach
          </select>
  // .......
  // .......
   </form>
save方法将保存对雄辩模型所做的更改。此外,您不需要编辑$request对象来获得此处所需的结果

此外,您还需要确保模型上的此属性可以在$fillable数组中大量分配,也可以从$blog模型上的$CURDED数组中排除


如上所述,您是否也是舒尔的行动/指向存储方法

我将展示我如何通过post方法存储东西,它对我有效,但你必须知道我是noob。很抱歉,如果我写的对你来说是显而易见的,但不能做更多:

 public function store(request $request)
{
    $this->validatePost();
    $post = new Post(request(
        ['title', 'excerpt','deadline']
    ));
    $post->save();
    return redirect(route('admin.posts'));
}

你做了$blog->save吗?我做了。对不起,我没有写下来。我用//…..符号表示它,我会编辑它。模型上的可填充字段呢?是的。我以前已经让表单工作了,但是当我添加选项功能时麻烦来了。我已经保存了。对不起,我没有写下来。我用//…..符号表示,我将编辑它。另外,当我尝试您的建议时,结果是参数1传递给Illumb\Database\Grammar::parameterize必须是数组类型,字符串给定,在第869行的C:/…/vendor\larvel\framework\src\Illumb\Database\Query\Grammars\Grammar.php中调用。它可能取决于您通过请求传递给数组的内容。老实说,为了便于使用,我会像你一样使用集合。例如,收集$request->sistem->filterfunction$item,$key{return$item!==0}->unique->toArray;。您还应该检查模型上的可填充字段,因为这可能是您最初的问题所在。
$blog->sistem = array_unique(array_diff($request->sistem, [0]));
$blog->save();
 public function store(request $request)
{
    $this->validatePost();
    $post = new Post(request(
        ['title', 'excerpt','deadline']
    ));
    $post->save();
    return redirect(route('admin.posts'));
}