jam*_*s0n 14 post laravel laravel-routing
我在Laravel中通过POST进行基本记录更新时遇到了麻烦.
我已经捕获了数组中的所有发布数据,如果现有的Order#为0,那么我创建一个新记录(工作正常).否则我更新现有记录.
Order.php
class Order extends Eloquent {
public static $table = 'my_orders';
}
Run Code Online (Sandbox Code Playgroud)
routes.php文件
//Handle a new order POST
Route::post('order', array('do' => function() {
$thisOrder = array(
'qty' => Input::get('quantity'),
'desc' => Input::get('description'),
);
$thisOrderID = Input::get('orderNo');
//CHECK FOR NEW OR EXISTING ORDER
if($thisOrderID > 0) {
//THIS FUNCTION SOMEHOW RETURNS THE FUNCTION CALL AND DOESNT CONTINUE PAST
//AND THE RECORD IS NOT UPDATED
$updateOrder = Order::update($thisOrderID, $thisOrder);
}
}
Run Code Online (Sandbox Code Playgroud)
更新:上面的代码实际上工作.我有一个验证错误,导致函数提前返回.
小智 21
而不是这一行:
$updateOrder = Order::update($thisOrderID, $thisOrder);
Run Code Online (Sandbox Code Playgroud)
你需要这样做:
$updateOrder = Order::find($thisOrderID)->update($thisOrder);
Run Code Online (Sandbox Code Playgroud)
使用find()(等于where_id()),您可以从数据库中选择一个特定的行,并通过更新传递新数据.
| 归档时间: |
|
| 查看次数: |
31375 次 |
| 最近记录: |