Laravel 4 使用Laravel 4实现CRUD(代码审查)

Laravel 4 使用Laravel 4实现CRUD(代码审查),laravel-4,Laravel 4,我不太确定这里是否允许它请求代码审查,但我将尝试改进代码 好的,我刚开始使用Laravel 4,我读了一些关于如何在Laravel中实现CRUD的教程。最后我开发了一部分。我要向你们展示的更多的是控制器和雄辩的ORM 我这里有两个模型“组”,只能有一个“国家”,但“国家”可以分配给不同的“组”(“一对多”) 群模型 国家模式 在我的控制器中,我有index()函数,它接受用户搜索过滤器和分页请求 组控制器 希望得到健康的回应。 提前谢谢 这个问题应该去我知道,我不知道有一个codereview部

我不太确定这里是否允许它请求代码审查,但我将尝试改进代码

好的,我刚开始使用Laravel 4,我读了一些关于如何在Laravel中实现CRUD的教程。最后我开发了一部分。我要向你们展示的更多的是控制器和雄辩的ORM

我这里有两个模型“组”,只能有一个“国家”,但“国家”可以分配给不同的“组”(“一对多”)

群模型 国家模式 在我的控制器中,我有index()函数,它接受用户搜索过滤器和分页请求

组控制器 希望得到健康的回应。
提前谢谢

这个问题应该去我知道,我不知道有一个codereview部分,谢谢!
class Group extends Eloquent
{
    protected $table = 'group';
    protected $guarded = array('group_id');
    protected $primaryKey = 'group_id';

    public function country() 
    {
        return $this->belongsTo('country', 'country_id');
    } 

}
class Country extends Eloquent
{
    protected $table = 'country';
    protected $primaryKey = 'country_id';

    public function group() {
        return $this->hasMany('group', 'country_id');
    }

}
public function index()
{
    // search variables here
    $s_name = Input::get("s_name");
    $s_status = Input::get("s_status");

    // order variables here
    $sortBy = Input::get("sort_by");
    $orderBy = Input::get("order_by");

    // get all the groups
    $groups = Group::with('country')
        ->join('country', 'country.country_id', '=', 'group.country_id');

    // search conditions
    $groups = $groups->whereIn('group_status', array(ACTIVE, INACTIVE));
    if (!empty($s_name)) {
        $groups = $groups->where('group_name', 'LIKE', "%$s_name%");
    }

    if (!empty($s_status)) {
        $groups = $groups->where('group_status', 'LIKE', "%$s_status%");
    }

    // order
    if (!empty($sortBy)) {
        $orderBy = (empty($orderBy)) ? ASCENDING : $orderBy;
        if ($sortBy == "o_name") {
            $groups = $groups->orderBy('group_name', $orderBy);

        } else if ($sortBy == "o_country") {
            $groups = $groups->orderBy('country_short_name', $orderBy);

        } else if ($sortBy == "o_status") {
            $groups = $groups->orderBy('group_status', $orderBy);

        }
    } else {
            $groups = $groups->orderBy('group.created_at', DESCENDING);

    }

    $groups = $groups->paginate(PAGINATION_LIMIT);

}