下午好。我有一个模型,它有一个名为“百分比”的字段。所有类似模型的百分比总和不能超过100%。检查是在验证期间处理的。我需要验证错误消息来说明用户剩余的“空间”百分比。例如,如果所有MyModel的总数已经达到80%,而用户尝试创建一个百分比为40%的新MyModel,则错误消息会显示“您的百分比太高。您只剩下20%。”问题是我不知道如何将变量放入验证错误消息中。在MyModel.php中:public$validate=array('percentage'=>array('rule'=>array('confirmValidPercentage','percentage'),'mes
我想在我的应用程序中包含GoogleAPI。我想将Outh2key、secretkey和开发人员key定义为常量,我可以在AppController中调用和使用它们。哪个是定义相同的最佳位置? 最佳答案 /app/Config/bootstrap.php我不会将它们设置为常量,我会使用配置类来存储它们:Configure::write(array('outh2.key'=>'foo','outh2.secret_key'=>'bar','outh2.dev_key'=>'baz'));$key=Configure::read('ou
我是CakePHP的新手。当我使用ModelFieldValidations时,它会在每个必需的表单字段前面显示错误消息。我想在表单顶部的div中显示它。我如何实现它。提前致谢。这是我的代码:型号:array('required'=>array('rule'=>array('notEmpty'),'message'=>'Ausernameisrequired'),array('rule'=>array('minLength',8),'message'=>'Usernamemustbeatleast6characterslong')),'password'=>array('require
我的CakePHP应用程序有一个单独的配置文件,它加载在bootstrap.php中。我的问题是,如何在我的Controller中访问配置的变量?IE。如何在Controller中执行Configure::read('variable')函数?谢谢! 最佳答案 在我的自定义配置文件/app/Config/myconfig.php中,我定义了我的配置变量:'myValue');在我的Action中,我读到可以读取配置文件并访问变量:Configure::load('myconfig','default');$configValue=C
我有一个名为User的模型,它有一个Virtualfield名为full_name。当我在find()查询中访问我的模型User时,我可以毫无问题地在我的虚拟字段上设置条件,如下所示:$user=$this->User->find('first',array('recursive'=>-1,'conditions'=>array('User.full_name'=>'BruceThomas')));上面的查询将成功返回名为BruceThomas的用户的数据。但是,当我尝试通过Containable行为通过另一个模型使用我的模型User时,问题就出现了:$user=$this->MyOt
因此,我很想使用php框架重写我的应用程序,因为我认为这将使人们更容易参与进来,并改进应用程序的设计。CakePHP看起来像是最好的PHPWeb框架。有没有人有任何经验?从手工编写PHP到使用框架,我应该考虑哪些注意事项? 最佳答案 不取决于你选择的框架,你首先要知道的是:你需要一些时间才能知道在那段时间你会做一些糟糕的事情^^因此,考虑到您需要一些时间才能完全投入使用:-)我认为这些点是最被低估的点:使用一个框架不需要太多时间......用好它并充分发挥它的能力需要......好吧,几个月,也许.......这意味着,当你在项目结
在CakePHP中一个模型可以有多个表吗? 最佳答案 从手册中的这句话猜测:Amodelisgenerallyanaccesspointtothedatabase,andmorespecifically,toacertaintableinthedatabase.Bydefault,eachmodelusesthetablewho'snameispluralofitsown,i.e.a'User'modelusesthe'users'table.我不这么认为,但你可以建立关系,也许这就是你需要的。Checkthis
我想使用cache在CakePHP.如何使用它? 最佳答案 if(!($cachedPosts=Cache::read('cached_posts'))){$cachedPosts=$this->Post->find('all');Cache::write('cached_posts',$cachedPosts);}在此代码示例中,您将查看是否缓存了数据-如果没有,则从数据库中检索它,并将其写入缓存。在下一次请求时,数据将来自缓存,而不是来自数据库。 关于php-我如何在CakePHP中
我正在尝试使用CakePHP从一个目前有超过50,000条记录的表中创建一个XML站点地图,每条记录相当于站点地图中的一个URI。现在我面临的问题是CakePHP在生成它时耗尽了我的内存,原因有两个:find('all')正在构建一个包含整组50,000个URI的巨大关联数组。因为我不想从Controller本身输出HTML,所以我将包含URI、优先级、更改频率等的关联数组传输到带有$this->set()调用--这又是一个巨大的调用,包含50,000个索引。是否有可能在遵循MVC和CakePHP准则的同时执行此操作? 最佳答案 我
我正在为C2DM开发一个API,以将推送消息发送到Android设备。我有PHP5中的API,我想将它转换为CakePHP2.0。如何在CakePHP中创建不引用数据库表的模型?是否可以创建这样的模型和Controller来管理它?或者是否有任何现有代码可以在CakePHP中执行云到设备消息传递(C2DM)?提前致谢。 最佳答案 您可以在特定的无表模型中将$useTable设置为false,seethecookbookforfurtherdetails. 关于php-是否可以创建一个不引