0

警告:: LARAVEL 超级初学者,温柔点::

在我的控制器中:

public function get_index(){
$lease_rates = DB::table('lease_rates');
$this->layout->nest('content','admin.lease_rates', array('lease_rates' => $lease_rates, ));

在我的 lease_rates 表中:

   id   lease_year   class_letter   rate
    1      2012           A          635
    2      2012           B          648
   ...     ....          ...         ...
    5      2012           E          789
    6      2011           A          629

在我的 lease_rates.blade.php 中:

<input type="text" 
       name="{{ $lease_rates->rate->find(1) }}" 
       value="{{ $lease_rates->rate->find(1) }}">

<input type="text" 
       name="{{ $lease_rates->rate->find(2) }}" 
       value="{{ $lease_rates->rate->find(2) }}">

显然上面的行不通。我想要的最终结果:

  • 按lease_year 对发送到页面的数组进行排序,然后按class_letter 升序降序。
  • 将每个 id 的汇率值放入文本框中,其中文本框名称是 id,显示的文本是该 id 的汇率。
  • 之后,我需要提交对表格所做的任何更改
  • 之后,我将致力于添加记录

非常感谢!就像我说的,我是新人,但渴望学习(甚至更渴望完成这件事)

4

1 回答 1

1

您是否查看了 Fluent Query Builder(或 Eloquent ORM)的文档?http://laravel.com/docs/database/fluent

你可以做这样的事情(没有检查,但你应该明白):

//In your controller
$lease_rates = DB::table('lease_rates')->order_by('lease_year', 'desc')->order_by('class_letter', 'desc')->get();

//In your view
@foreach($lease_rates as $lease_rate)
    <input type="text" name="{{ $lease_rate->id) }}" value="{{ $lease_rate->rate }}">
@endforeach


//Save controller
foreach(Input::all() as $id => $rate){
    DB::table('lease_rates')->where('id', '=', $id)
    ->update(array('rate' => rate));
}

你也可以使用 Eloquent ORM,让它变得更简单。

于 2013-02-01T10:50:07.270 回答