Php 每个内部表单的最佳方法

Php 每个内部表单的最佳方法,php,html,laravel,Php,Html,Laravel,我有一对多的关系。假设它是一个用户可能有一个或多个水果。假设用户有3种产品 苹果 香蕉 葡萄 我想让用户做一个产品日志。假设表单如下所示: <label for="description">Give a description of the log</label> <input type="text" name="description" id="description"/> @forelse($user->fruits as $fruit)

我有一对多的关系。假设它是
一个用户可能有一个或多个水果
。假设用户有3种产品

  • 苹果
  • 香蕉
  • 葡萄
我想让用户做一个产品日志。假设表单如下所示:

<label for="description">Give a description of the log</label>
<input type="text" name="description" id="description"/>

@forelse($user->fruits as $fruit)
    <label for="{{$fruit->name}}">give condition of all {{$fruit->name}}</label>
    <input type="text" id="{{$fruit->name}}" name="{{$fruit->name}}" />
@empty
    No fruits available!
@endforelse

<button type="submit">
给出日志的描述
@forelse($user->fruits as$fruit)
给出所有{{$FROUT->name}的条件
@空的
没有水果!
@endforelse
这将给我一个表格,我可以描述将要保存的日志,还可以对用户的苹果、香蕉和葡萄进行状态更新

请记住,这只是一个例子。我觉得这将很难在控制器中处理(我如何获得正确的
$\u POST
值?),处理电源效率低下,并且有点违背MVC的原则。
有没有更好的方法来使用所有的
一对多
值,并使用html/php以相同的形式使用它们,而不让工作变得混乱?我使用的是Laravel,但对于所有框架来说,这可能是一个全面的问题

您可以将数组附加到表单,如
input name='fruit[]'

PHP将把每个水果元素解析成一个易于使用的数组

您可以在表单上附加一个数组,如
input name='fruit[]'

PHP将把每个水果元素解析成一个易于使用的数组

@RyanVincent我并不关心速度,因为我在一个相当不错的服务器上运行这个。我只是觉得这不是最合乎逻辑的方法,我觉得应该有更好的方法,而不是在表单中进行预处理,然后尝试在控制器中获取POST值,并分别对其应用代码。我展示的方式可能是唯一的方式,也可能不是唯一的方式,我正在寻找最好的方式(这可能就是这一种,我很高兴听到这一点)。你使用的是Laravel雄辩的模型吗?我原以为filleble属性可以在控制器中很好地处理这一点。表单input/$response看起来像什么?@brianlmerritt我确实在使用雄辩的模型。问题是,每个用户都可以添加他们自己的水果,所以fillable属性在这里不起作用,因为如果有人想添加菠萝或其他任何东西,也可能添加菠萝。不幸的是,大规模分配在这里不起作用。我今天花了大量时间处理集合()并设法将每个循环的50行嵌套减少到只有几个groupBy和keyBy以及filter和map调用,最后是8行代码。你能画一个简单的关系表或关系图吗?ps-fillable只决定字段名,而不是进入字段的值。看看pivot表,它有点像WordPress metatables@RyanVincent我并不真的关心速度,因为我在一个相当不错的服务器上运行它。我只是觉得这不是最合乎逻辑的方法,我觉得应该有更好的方法,而不是在表单中进行预处理,然后尝试在控制器中获取POST值,并分别对其应用代码。我展示的方式可能是唯一的方式,也可能不是唯一的方式,我正在寻找最好的方式(这可能就是这一种,我很高兴听到这一点)。你使用的是Laravel雄辩的模型吗?我原以为filleble属性可以在控制器中很好地处理这一点。表单input/$response看起来像什么?@brianlmerritt我确实在使用雄辩的模型。问题是,每个用户都可以添加他们自己的水果,所以fillable属性在这里不起作用,因为如果有人想添加菠萝或其他任何东西,也可能添加菠萝。不幸的是,大规模分配在这里不起作用。我今天花了大量时间处理集合()并设法将每个循环的50行嵌套减少到只有几个groupBy和keyBy以及filter和map调用,最后是8行代码。你能画一个简单的关系表或关系图吗?ps-fillable只决定字段名,而不是进入字段的值。看一看pivot表,它相当于WordPress元表