web.php 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <?php
  2. /*
  3. |--------------------------------------------------------------------------
  4. | Web Routes
  5. |--------------------------------------------------------------------------
  6. |
  7. | Here is where you can register web routes for your application. These
  8. | routes are loaded by the RouteServiceProvider within a group which
  9. | contains the "web" middleware group. Now create something great!
  10. |
  11. */
  12. // 网站主页
  13. Route::get('/', 'HomeController@index')->name('index');
  14. // Auth::routes();
  15. // 用户身份验证相关的路由
  16. Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
  17. Route::post('login', 'Auth\LoginController@login');
  18. Route::post('logout', 'Auth\LoginController@logout')->name('logout');
  19. // 用户注册相关路由
  20. Route::get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
  21. Route::post('register', 'Auth\RegisterController@register');
  22. // 密码重置相关路由
  23. Route::get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
  24. Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
  25. Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
  26. Route::post('password/reset', 'Auth\ResetPasswordController@reset')->name('password.update');
  27. // Email 认证相关路由
  28. // ...
  29. // 个人中心
  30. Route::resource('users', 'UsersController', ['only' => ['show', 'update', 'edit']]);
  31. Route::get('users/{user}/edit_avatar', 'UsersController@edit_avatar')->name('users.edit_avatar'); // 修改头像
  32. Route::patch('users/{user}/update_avatar', 'UsersController@update_avatar')->name('users.update_avatar'); // 修改头像
  33. Route::get('users/{user}/edit_password', 'UsersController@edit_password')->name('users.edit_password'); // 修改密码
  34. Route::patch('users/{user}/update_password', 'UsersController@update_password')->name('users.update_password'); // 修改密码
  35. // 消息通知
  36. Route::resource('notifications', 'NotificationsController', ['only' => ['index']]);
  37. // 搜索
  38. Route::get('search', 'SearchController@index')->name('search.index');
  39. Route::get('contact', 'ContactController@index')->name('contact.index');
  40. // 七牛图片库管理
  41. Route::get('qinius', 'QiniusController@index')->name('qinius.index');
  42. Route::get('qinius/images', 'QiniusController@images')->name('qinius.images');
  43. Route::get('qinius/cdns', 'QiniusController@cdns')->name('qinius.cdns');
  44. Route::get('qinius/urls', 'QiniusController@urls')->name('qinius.urls');
  45. // 改版后博客文章 301
  46. Route::get('articles/{article}', 'ArticlesController@show');
  47. // 回复
  48. Route::resource('replies', 'RepliesController', ['only' => ['store', 'update', 'edit', 'destroy']]);
  49. // 首页 Banner
  50. Route::resource('banners', 'BannersController', ['only' => ['index', 'create', 'store', 'update', 'edit', 'destroy']]);
  51. /**
  52. * 博客
  53. */
  54. Route::group(['prefix'=> 'blog'], function (){
  55. // 标签
  56. Route::get('tags/{tag}', 'BlogTagsController@show')->name('blog.tags.show');
  57. // 分类
  58. Route::resource('categories', 'BlogCategoriesController', [
  59. 'names' => [
  60. 'index' => 'blog.categories.index',
  61. 'show' => 'blog.categories.show',
  62. 'create' => 'blog.categories.create',
  63. 'store' => 'blog.categories.store',
  64. 'edit' => 'blog.categories.edit',
  65. 'update' => 'blog.categories.update',
  66. 'destroy' => 'blog.categories.destroy',
  67. ],
  68. 'only' => ['index', 'show', 'create', 'store', 'update', 'edit', 'destroy']
  69. ]);
  70. // 文章
  71. Route::resource('articles', 'BlogArticlesController', [
  72. 'names'=> [
  73. 'index' => 'blog.articles.index',
  74. 'show' => 'blog.articles.show',
  75. 'create' => 'blog.articles.create',
  76. 'store' => 'blog.articles.store',
  77. 'edit' => 'blog.articles.edit',
  78. 'update' => 'blog.articles.update',
  79. 'destroy' => 'blog.articles.destroy',
  80. ],
  81. 'only' => ['index', 'show', 'create', 'store', 'update', 'edit', 'destroy']
  82. ]);
  83. });
  84. /**
  85. * 教程 书籍
  86. */
  87. Route::group(['prefix'=> 'course'], function(){
  88. // 订单
  89. Route::resource('orders', 'CourseBookOrdersController', [
  90. 'names'=> [
  91. 'index' => 'course.orders.index',
  92. 'show' => 'course.orders.show',
  93. 'edit' => 'course.orders.edit',
  94. 'update' => 'course.orders.update',
  95. 'destroy' => 'course.orders.destroy',
  96. ],
  97. 'only' => ['index','show', 'edit', 'update', 'destroy']
  98. ]);
  99. // 教程
  100. Route::resource('books', 'CourseBooksController', [
  101. 'names'=> [
  102. 'index' => 'course.books.index',
  103. 'show' => 'course.books.show',
  104. 'create' => 'course.books.create',
  105. 'store' => 'course.books.store',
  106. 'edit' => 'course.books.edit',
  107. 'update' => 'course.books.update',
  108. 'destroy' => 'course.books.destroy',
  109. ]
  110. ]);
  111. // 目录
  112. Route::resource('{book}/sections', 'CourseSectionsController', [
  113. 'names'=> [
  114. 'index' => 'course.sections.index',
  115. 'create' => 'course.sections.create',
  116. 'store' => 'course.sections.store',
  117. 'edit' => 'course.sections.edit',
  118. 'update' => 'course.sections.update',
  119. 'destroy' => 'course.sections.destroy',
  120. ],
  121. 'only' => ['index', 'create', 'store', 'edit', 'update', 'destroy']
  122. ]);
  123. // 文章
  124. Route::resource('{book}/articles', 'CourseArticlesController', [
  125. 'names'=> [
  126. 'show' => 'course.articles.show',
  127. 'create' => 'course.articles.create',
  128. 'store' => 'course.articles.store',
  129. 'edit' => 'course.articles.edit',
  130. 'update' => 'course.articles.update',
  131. 'destroy' => 'course.articles.destroy',
  132. ],
  133. 'only' => ['show', 'create', 'store', 'edit', 'update', 'destroy']
  134. ]);
  135. // 购买
  136. Route::resource('{book}/purchases', 'CoursePurchasesController', [
  137. 'names'=> [
  138. 'index' => 'course.purchases.index',
  139. ],
  140. 'only' => ['index']
  141. ]);
  142. });