直接使用模型的 class 静态方法,不带 "USE" 关键字
Using model's class static method directly, without "USE" keyword
我有"UsersController"个文件:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
class UsersController extends Controller
{
public function store(Request $request) {
User::create( $request->all() );
return "user added";
}
}
"store"方法对应"POST"请求:
Route::post('users', ['uses' => 'UsersController@store']);
所以现在,如果我将 POST 数据发送到 "users" 页面,它会将新用户添加到数据库中的 "users" table。
好的,这有效,但我对 use App\User;
有疑问
如果删除此行,然后尝试使用 "create" 方法,如下所示:
public function store(Request $request) {
App\User::create( $request->all() );
...
给出错误:Class 'App\Http\Controllers\App\User' not found
问题是:为什么不能像这样直接使用"User"class静态方法"create":
App\User::create( $request->all() )
?
替换你的
App\User::create( $request->all() );
来自
\App\User::create( $request->all() );
我有"UsersController"个文件:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
class UsersController extends Controller
{
public function store(Request $request) {
User::create( $request->all() );
return "user added";
}
}
"store"方法对应"POST"请求:
Route::post('users', ['uses' => 'UsersController@store']);
所以现在,如果我将 POST 数据发送到 "users" 页面,它会将新用户添加到数据库中的 "users" table。
好的,这有效,但我对 use App\User;
如果删除此行,然后尝试使用 "create" 方法,如下所示:
public function store(Request $request) {
App\User::create( $request->all() );
...
给出错误:Class 'App\Http\Controllers\App\User' not found
问题是:为什么不能像这样直接使用"User"class静态方法"create":
App\User::create( $request->all() )
?
替换你的
App\User::create( $request->all() );
来自
\App\User::create( $request->all() );