【问题标题】:When parameter is not passed to controller over url当参数未通过 url 传递给控制器​​时
【发布时间】:2014-04-14 11:27:38
【问题描述】:

在 cakephp 中,我有一个控制器,它应该接收一个参数,然后调用模型与数据库一起工作以在视图中显示结果。很常见的 mvc 方法。

将控制器想象成“插入新帖子”,它应该与特定用户相关联。

所以,URL 应该是:http://mysite/inspost/(user_id).

问题是,当 URL 类似于 http://mysite/inspost/

即使未指定 user_id,它也会显示相同的视图并插入新帖子。

我该如何控制?

【问题讨论】:

  • 您可以先向我们展示您的代码...
  • 你有典型的用户检查if($user_id == null) throw new NotFoundException()吗?

标签: php cakephp cakephp-routing


【解决方案1】:

来自博客教程的第 2nd 页,Adding a layer

public function view($id = null) {
    if (!$id) {
        throw new NotFoundException(__('Invalid post'));
    }

    $post = $this->Post->findById($id);
    if (!$post) {
        throw new NotFoundException(__('Invalid post'));
    }
    $this->set('post', $post);
}

【讨论】:

  • 是的,我正在做,教程,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-05
  • 1970-01-01
  • 1970-01-01
  • 2014-11-04
  • 1970-01-01
  • 2012-11-16
相关资源
最近更新 更多