dty98339 2013-07-17 09:11
浏览 43
已采纳

CakePHP如何将参数传递给控制器​​?

In CakePHP I am trying to pass a simple parameter to my controller class method. However it looks like the parameter has to be visible in the URL. Can't I pass a parameter without it being visible in the URL?

My routing:

Router::connect(
    '/',
    array(
        'controller' => 'Pages',
        'action' => 'display'
    ),
    array(
        'pass' => array(
            'pageName' =>'home'
        )
    )
);

And my Controller method:

public function display($p_sPageName=null) {
  • 写回答

1条回答 默认 最新

  • dovzrfr0506 2013-07-17 09:17
    关注
    Router::connect(
        '/',
        array(
            'controller' => 'Pages',
            'action' => 'display',
            'home',
        ),
    );
    

    This should be a default route in a baked application and already present. The book has also a very good section explaining the routing.

    Also follow the CakePHP coding standard, this variable name $p_sPageName is bad. Nobody ever knows what $p_s means. This is a very good read about writing clean and readable code.

    /**
     * Displays a static page
     *
     * @param string $pageName
     * @return void
     */
        public function display($pageName = null) { /*...*/ }
    

    The doc block should tell you by "@param string $pageName" that it is a string not the variable name. Without documentation this becomes unreadable for everyone who does not know the naming conventions.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)