1.重建项目 ,特别是laravel框架代码重新下载;2.使用php内置的小型服务器代替nginx或apache应用服务器,方法是在目录下开启命令行,执行命令 php artisan serve --port 8888,然后就可以在浏览器访问了。
你的MemberController不在Controller目录下。
第二个路由的name字符控制里面的+要写在外面哦。
其他的就不知道了~~?
如果你不加别名啥的话这样可以。如果加别的参数别名的话就需要加上uses, 比如加别名就在 [] 里面表示,如:
Route::post('member/info', [
'uses'=>'MemberController@info',
'as' => 'newName'
]);
request()->input('id');
修改htaccess文件中的路由正则
检查一下类名和文件名是否一致,文件是否放入到controller/
你是什么环境的,我之前遇到过这种问题,我是 nginx 的环境,要修改nginx的配置文件就可以了
server { listen 80; server_name test.laravel.local; access_log /home/wwwroot/default/logs/access_laravel.log; error_log /home/wwwroot/default/logs/error_laravel.log; root /home/wwwroot/default/laravel5/public; index index.html; location / { index index.php; try_files $uri $uri/ /index.php?$query_string; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } } location ~ .+\.php($|/) { set $script $uri; set $path_info "/"; if ($uri ~ "^(.+\.php)(/.+)") { set $script $1; set $path_info $2; } fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php?IF_REWRITE=1; include fastcgi_params; fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_FILENAME $document_root/$script; fastcgi_param SCRIPT_NAME $script; } }
你把你的代码截图出来看看。还有报错具体的报错信息。
Route::any('/product/info',['uses'=>'CatController@info','as'=>'center']);
path? 不是uses吗?
这个写法可能不行,我从网上搜索了一下 Route 的参数 只能传两个(Route::get('user/{states}/{callback}', '控制器类名称@方法');),至于为什么传3个没有报错我也不清楚。还是遵循Laravel的规范用常规方式吧
//routes.php Route::get('member/mb',['as'=>'mb','uses'=>'MemberController@mb']); //MemberController.php class MemberController extends Controller{ public function mb(){ return route('mb'); } }
别名不是访问用的,访问url用的是第一个参数,别名的作用是优化url的时候,只需要改routes中第一个参数就可以了,控制器中的方法使用url用的是别名,故不需要再对控制器代码用到的url进行修改。
如图所示:
第77行的route没闭合
报错信息是什么?
主要是访问问题.....
比如你一个路由是index/memberCenter....很长吧!!!
在没有别名的情况下..我们在控制器中输入指定的URL一般是 http://...../index/memberCenter....通过这样的方式去写路由的...是不是很麻烦???如果路由名称一改...那么在控制器中的URL都要修改...修改的地方很多啊....不方便啊..
如果使用路由别名....在控制器中获取URL就是route("别名")...完成了..然后你修改路由名称...只要别名不改...控制器根本就不用修改...方便多了..而且地址获取也方便啊
uses 是让你指定控制下面的方法的函数!
users 是指需要连接的控制器及方法
namespace app\Http\Controllers;
是的,这个很实用,去掉虽然有利于API的规范,但后台这些模块用着确实麻烦了。