jjzjj

php - cakephp Controller 测试 - 如何测试需要授权的操作?

标题几乎说明了一切。我想测试例如UsersController::admin_index()操作,但用户需要获得访问此位置的授权,因此当我运行测试时,它会将我发送到登录页面,甚至当我手动登录时,没有进行任何测试。那么如何在不编辑实际授权码的情况下强制蛋糕跳过授权呢?顺便说一句,如果有帮助,我的testAdminIndex()代码如下所示:functiontestAdminIndex(){$result=$this->testAction('/admin/users/index');debug($result);} 最佳答案 这里有一

php - CakePHP 业务逻辑层

CakePHP似乎从来没有提到将应用程序的业务逻辑层和数据访问层分开。这是我的第一个MVC应用程序,我的“胖模型”变得非常胖,因为它们包含各种业务逻辑,其唯一真实的共同点是需要访问同一个数据库。当您听到将业务逻辑从Controller转移到模型中的建议时,以这种状态结束真的可以接受吗?CakePHP是否为单独的业务逻辑层提供任何结构作为其框架的一部分?谢谢,布莱恩 最佳答案 没有。在我看来,您遇到的是ActiveRecord模式的典型缺点。此外,CakePHP完全基于结果关联数组而不是对象实例也无济于事。我建议你看看像Doctrin

php - 仅在填写字段时更新密码

我的看法:UsernameForm->input('User.username',array('label'=>''));?>PasswordForm->password('User.password',array('label'=>'','value'=>''));?>我的Controller:functionedit($id=null){$this->User->id=$id;$data=$this->data;#print_r($data);if(empty($data)){$this->data=$this->User->read();}else{if($this->User-

php - CakePHP + TinyButStrong

有人试过将TinyButStrong与CakePHP一起使用吗?我对TinyButStrong没有先验知识,但似乎是从模板生成Word文档的好方法。但我不确定如何将其与CakePHP应用程序集成。感谢您的任何想法/建议。最好的问候,托尼。 最佳答案 我猜你是指TinyButStrong和OpenTBS可以使用模板合并DOCX(以及其他MsOffice和OpenOffice文档)的插件。这是一种在CakePHPController中添加export操作的方法,该操作旨在生成要下载的Docx。以下代码适用于CakePHP1.3版,未在2

php - 如何在 cakephp 中使用 session 打印用户名?

当我从session中调用它时,我无法让我的用户名显示在网站上。index页面的代码是:UsersHomeWelcomeSession->read('Users.username');?>我做错了什么?我也尝试过各种其他调用它的方法,然后收到不同的错误消息。 最佳答案 在您的代码中,您使用用户名的内容设置$user。但是你没有打印它。UsersHomeWelcomeSession->read('Auth.User.username')?>这是的缩写UsersHomeWelcomeSession->read('Auth.User.us

php - Cakephp 查找字段

我正在尝试通过find()检索每条记录的一列。当我执行我的代码时,它返回表中的所有字段。这是我的代码。我的代码有什么问题?我正在使用Cakephp1.3。publicfunctionfindPolicyIds($coverageId=null){$id=$this->Policy->find('all',array('recursive'=>-1,array('fields'=>array('Policy.id'))));return$id;} 最佳答案 我认为您正在形成一个额外的阵列。试试这个:publicfunctionfind

php - 使用 CakePHP 3 进行 i18n 翻译

上下文我想将我的应用程序翻译成法语和英语。我完全按照CakePHP3documentation但它不起作用。到目前为止我做了什么为了我的开发,我使用了一个vagrantbox来轻松启动和运行CakePHP3。这个box被命名为vagrant-chef/config/bootstrap.php我修改了第100行以使用法语作为默认语言。ini_set('intl.default_locale','fr_CA');/src/Controller/PagesController我将此方法添加到默认的PagesControllerpublicfunctioninitialize(){I18n::

php - 如何使用迁移插件将 tinyint 添加到 cakephp 3 中的数据库字段?

我正在使用cakephp3迁移插件来设计数据库。我想将限制为1的status字段tinyint添加到字段中,我尝试了以下但没有任何结果。尝试1.(失败)$table->addColumn('status','smallinteger',['default'=>0,'limit'=>1,'null'=>false,]);尝试2.(失败)$table->addColumn('status','tinyint',['default'=>0,'limit'=>1,'null'=>false,]);我找不到任何相同的文档,可能在那里,我遗漏了一些东西DocsLink

php - 带有数组选项的 Cakephp 表单输入

我正在使用cakephp3并使用Form->input()并且需要传递一组选项。我的数组看起来像这样:$options=['option1','option2','option3'];我需要这些选项的值与标签相同。问题是,cakephp使用数组索引作为值。因此,如果有人选择option1,则值将为0。我需要值为option1。编辑:现在,我已将数组更改为如下所示:$options=['option1'=>'option1','option2'=>'option2','option3'=>'option3'];可以用,但是还是好奇,请问还有别的办法吗? 最佳答

php - 在 CakePHP 项目中的什么地方放置自定义类和第三方类?

我刚刚开始处理现有的CakePHP项目。我将开发一个在Excel电子表格上执行一些操作的类。与PEAR对象一样,该类将由Cake组件调用,但它本身不会调用任何Cake组件。将类文件放在项目层次结构中的最佳位置? 最佳答案 在其中一个供应商文件夹中(/app/vendors,如果您想在多个应用程序中使用您的类,则为/vendors),另请参阅:http://book.cakephp.org/view/538/Loading-Vendor-Files 关于php-在CakePHP项目中的什么