我正在尝试在 Laravel4 中为我的UserRepository创建一个add()方法。存储库位于roBlog命名空间中。当我调用$user->username
方法传递凭证数组的用户名成员时,应用程序会抛出错误:Call to undefined method Illuminate\Database\Query\Builder::username()
。
用户表示的表具有用户名属性。
我从Illuminate导入了Builder类。
有谁知道我为什么会收到这个错误?
namespace roBlog\repositories;
use roBlog\User;
use Illuminate\Database\Query\Builder;
class DbUserRepository implements UserRepositoryInterface {
public function all()
{
return User::all()->toArray();
}
public function add($credentials)
{
$user = new User;
$user->username($credentials['username']);
$user->emai($credentials['email']);
$user->password(Hash::make($credentials['username']));
$user->save();
}
public function remove($user){
return $user->delete();
}
}
答案 0 :(得分:1)
你必须:
public function add($credentials)
{
$user = new User;
$user->username = $credentials['username'];
$user->email = $credentials['email'];
$user->password = Hash::make($credentials['password']);
$user->save();
}