Laravel 5.2:如何在Controller中获取Model属性

时间:2016-04-04 13:42:27

标签: laravel-5.2

如何在Laravel中的Controller中访问Model的属性?

在我的用户模型中,我有这个数组:

<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>MethodNotAllowed</Code>
    <Message>The specified method is not allowed against this resource.</Message>
    <Method>POST</Method>
    <ResourceType>OBJECT</ResourceType>
    <RequestId>657E87A80AFBB3B0</RequestId>
    <HostId>SY2g4smvhr06kAAQYVMsYeQZ+pSKbIIvsh/OaPBiMADGt5UKut0sXSZkFsnFmcRXQ2PFBVgPK4M=</HostId>
</Error>

然后,在我的UserController中,我有:

protected $sortable = [
    'first_name',
    'last_name',
    'email',
];

谢谢

3 个答案:

答案 0 :(得分:0)

Dunno,如果我理解你的话,但如果你在你的DB中有名字,姓氏和电子邮件,你可以这样得到它们:

$user = User::all();

如果没有,只需创建它:

 $user=new User();

答案 1 :(得分:0)

在索引功能中,您可以通过

访问它

$this->sortable

为了做到这一点,您必须将属性可访问性更改为public:

public $sortable = [
    'first_name',
    'last_name',
    'email',
];

如果您坚持使用protected辅助功能,则可以在模型中创建一个getter函数。

答案 2 :(得分:0)

用户模型

public $sortable = [
    'first_name',
    'last_name',
    'email'
];

UserController控制器

namespace App\Http\Controllers;
...
use App\User;

class UserController extends Controller
{
    public function index()
    {

        /* user object */
        $user = new User();

        foreach ( $user->sortable as $item )
        {
            echo "{$item} <br />";
        }

    }
}