博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在windows上使用symfony创建简易的CMS系统(二)
阅读量:5334 次
发布时间:2019-06-15

本文共 2816 字,大约阅读时间需要 9 分钟。

这次主要讲诉如何完成前台展示页面的开发:

依次运行如下指令:

>symfony generate:module frontend home

>symfony doctrine:generate-module frontend category Category

>symfony doctrine:generate-module frontend content Content

修改首页路由:

打开cms/apps/frontend/config/routing.yml, 找到:

homepage:

  url:   /
  param: { module: default, action: index }

修改为:

homepage:

  url:   /
  param: { module: home, action: index }

保存后,可直接通过输入访问首页

 

实现首页:

找到cms/apps/frontend/modules/home/actions/actions.class.php,写入代码:

 

[php] 
  1. <?php  
  2.   
  3. /** 
  4.  * home actions. 
  5.  * 
  6.  * @package    cms 
  7.  * @subpackage home 
  8.  * @author     Your name here 
  9.  * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $ 
  10.  */  
  11. class homeActions extends sfActions  
  12. {  
  13.  /** 
  14.   * Executes index action 
  15.   * 
  16.   * @param sfRequest $request A request object 
  17.   */  
  18.   public function executeIndex(sfWebRequest $request)  
  19.   {  
  20.     //$this->forward('default', 'module');  
  21.       
  22.     $this->categories = Doctrine::getTable('Category')  
  23.                         ->findAll();  
  24.       
  25.     $this->lastestList = Doctrine::getTable('Content')  
  26.                         ->createQuery('c')  
  27.                         ->orderBy('c.created_at desc')  
  28.                         ->limit(6)  
  29.                         ->execute();  
  30.       
  31.     $this->hotViewedList = Doctrine::getTable('Content')  
  32.                         ->createQuery('c')  
  33.                         ->orderBy('c.view_count desc')  
  34.                         ->limit(6)  
  35.                         ->execute();  
  36.                           
  37.     $this->hotCommentedList = Doctrine_Query::create()  
  38.                         ->from('Content c')  
  39.                         ->leftJoin('c.Comments m')  
  40.                         ->select('c.title, COUNT(m.id) mun_comments')  
  41.                         ->groupBy('c.id')  
  42.                         ->orderBy('mun_comments desc')  
  43.                         ->limit(6)  
  44.                         ->execute();  
  45.       
  46.     $this->hotRecommendList = Doctrine::getTable('Content')  
  47.                         ->createQuery('c')  
  48.                         ->where('c.recommend_level = 0')  
  49.                         ->orderBy('c.created_at desc')  
  50.                         ->limit(6)  
  51.                         ->execute();  
  52.   }  
  53. }  

找到cms/apps/frontend/modules/home/actions/indexSuccess.php,写入代码:

 

 

[html] 
    1. <div>  
    2.     <a href="<?php echo url_for("@homepage"); ?>">首页</a>  
    3.     <?php foreach ($categories as $category) :?>  
    4.         <a href="<?php echo url_for("category/edit?id=".$category->getId()); ?>">  
    5.             <?php echo $category->getName(); ?>  
    6.         </a>  
    7.     <?php endforeach; ?>  
    8. </div>  
    9.   
    10. <div>  
    11.     <h3>最近资讯</h3>  
    12.     <?php foreach ($lastestList as $topic) :?>  
    13.         <li><a href="<?php echo url_for("content/edit?id=".$topic->getId()); ?>">  
    14.             <?php echo $topic->getTitle(); ?></a>  
    15.         </li>  
    16.     <?php endforeach; ?>  
    17. </div>  
    18. <hr/>  
    19.   
    20. <div>  
    21.     <h3>热点资讯</h3>  
    22.     <?php foreach ($hotViewedList as $topic) :?>  
    23.         <li><a href="<?php echo url_for("content/edit?id=".$topic->getId()); ?>">  
    24.             <?php echo $topic->getTitle(); ?></a>  
    25.         </li>  
    26.     <?php endforeach; ?>  
    27. </div>  
    28. <hr />  
    29.   
    30. <div>  
    31.     <h3>热评资讯</h3>  
    32.     <?php foreach ($hotCommentedList as $topic) :?>  
    33.         <li><a href="<?php echo url_for("content/edit?id=".$topic->getId()); ?>">  
    34.             <?php echo $topic->getTitle(); ?>(<?php echo $topic->mun_comments; ?>)</a>  
    35.         </li>  
    36.     <?php endforeach; ?>  
    37. </div>  
    38. <hr />  
    39.   
    40. <div>  
    41.     <h3>推荐资讯</h3>  
    42.     <?php foreach ($hotRecommendList as $topic) :?>  
    43.         <li><a href="<?php echo url_for("content/edit?id=".$topic->getId()); ?>">  
    44.             <?php echo $topic->getTitle(); ?></a>  
    45.         </li>  
    46.     <?php endforeach; ?>  
    47. </div>  
    48. <hr />  

转载于:https://www.cnblogs.com/kaeloy/p/3415391.html

你可能感兴趣的文章
界面交互之支付宝生活圈pk微信朋友圈
查看>>
[DLX精确覆盖+打表] hdu 2518 Dominoes
查看>>
SuperMap iServerJava 6R扩展领域开发及压力测试---判断点在那个面内(1)
查看>>
Week03-面向对象入门
查看>>
一个控制台程序,模拟机器人对话
查看>>
web.xml 中加载顺序
查看>>
pycharm激活地址
查看>>
hdu 1207 四柱汉诺塔
查看>>
Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇——纯前端多页面)
查看>>
display:none与visible:hidden的区别
查看>>
我的PHP学习之路
查看>>
【题解】luogu p2340 奶牛会展
查看>>
对PostgreSQL的 SPI_prepare 的理解。
查看>>
解决响应式布局下兼容性的问题
查看>>
京东静态网页练习记录
查看>>
使用DBCP连接池对连接进行管理
查看>>
【洛谷】【堆+模拟】P2278 操作系统
查看>>
hdu3307 欧拉函数
查看>>
Spring Bean InitializingBean和DisposableBean实例
查看>>
Solr4.8.0源码分析(5)之查询流程分析总述
查看>>