我想要做的是从用户表中获取可用的积分,并且'积分'字段并获取foreach循环中当前项目的价格,即正常价格' '项目中的字段'表。
当用户填写他想要投入正常价格的金额时,一件物品,我想减去他的“积分”中的数字。字段,并为'创建一个新变量。这是您将信用额放入其中后的项目的价格'并显示它。
用户表和项目表是多对多关系,我可以通过
显示用户项目$user->item
我所做的是以下是错误的,因为' normalprice' in' $ item-> normalprice;'不是财产。我试图找出如何使$ itemprice等于' normalprice'在当前的@foreach($ user->项目为$ item)
控制器:
public function allocateCredit(){
$validator = Validator::make(Input::all(),
array(
'puttoward' => 'Integer',
));
$user = Auth::user();
$items = Item::all();
$userItems = Auth::user()->items;
$itemprice = $item->normalprice;
$available = $user->credits;
$goodtogo = ($available > $itemprice) ? TRUE : FALSE;
if($goodtogo === true){
$howmuch = Input::get('puttoward');
$newavailable = $howmuch - $available;
$itembalance = $itemprice - $howmuch;
$user->credits = $newavailable;
}
if($user->save()){
return Redirect::route('account')->with('global', 'Success.');
}
}
查看:
@foreach ($user->items as $item)
<div class="sep">
<div class="nameIt">
{{ $item->name }}
<form action="{{ URL::route('allocate-credits-post') }}" method="post" role="form">
<div class="form-group">
<label for="exampleInputPassword1">Allocate credits</label>
<input type="intiger" class="form-control" name="puttoward" placeholder="$0.00">
</div>
<button type="submit" class="btn btn-default">Submit</button>
{{ Form::token() }}
</form>
答案 0 :(得分:0)
由于您使用表单提交来调用Controller,为什么不将$ item-&gt; normalprice填充到表单中作为隐藏类型,如:
<input type="hidden" name="NormalPrice" value="{{$item->normalprice}}">
然后使用输入:: get('NormalPrice')
访问控制器中的值或者如果出于安全原因不需要,那么您可以填充 $ item-&gt; id ,然后在控制器中找出该ID的价格。