我试图在AppController上运行一个没有与之关联的Model的表.我不想使用模型,因为这个查询会在每个请求上触发,我猜使用模型会使它慢一点.
我在一个论坛中发现,这可以通过CakePHP 1.3中的以下代码实现
$db = ConnectionManager::getInstance();
$conn = $db->getDataSource('default');
$conn->rawQuery($some_sql);
Run Code Online (Sandbox Code Playgroud)
但这在CakePHP 2.1.3中不起作用.任何帮助,将不胜感激.谢谢 :)
不久之后,我几乎从未听过CakePHP这个词而没有听到Rails这个词.这两个框架是否主要基于它们如何遵循MVC模型,或者它们是否具有其他重要的相似性/差异?
对我来说,Rails的主要吸引力之一就是使用Ajax是多么容易.CakePHP也是如此吗?
我一直在为CakePHP尝试一些迁移脚本,但是我遇到了所有形式或其他形式的问题.
请告诉我关于您使用Live并了解作品的Cake的迁移选项.
我想要以下"功能":
我不需要rails样式的版本化文件一个git版本化的模式文件,它与现有模式进行实时比较.那就是:我喜欢Cake中的SchemaShell,除了它与我上面的大部分要求不兼容.
我看过并测试过:
曾经有,但似乎没有任何直接联系.一点点挖掘揭示了一些我认为分享有用的答案.
这些是一页中手册的链接 - 对于离线使用或使用Dardo Sordi Bogado的构建脚本创建PDF非常有用:http://rapidshare.com/files/218826372/manual-builder.zip
1.2手册在一页 http://book.cakephp.org/complete/3/The-Manual
1.3手册在一页 http://book.cakephp.org/complete/876/The-Manual
另请参阅此主题:http: //groups.google.com/group/cake-php/browse_thread/thread/5f45c1d0 ...
为什么CakePHP决定构建他们自己的文件格式而不是.tpl是超出我的...尽管如此,我无法在Eclipse中使用语法高亮...我遵循了本指南:http:
//planetcakephp.org/aggregator/items/5452-opening-ctp-file-with-syntax-highlight-in-eclipse(死链接)但它不起作用,我看到有关此文件的不支持的内容类型的错误.我已经为这个文件类型添加了PHP编辑器的关联,它仍然显示了问题.
关于如何使语法高亮显示工作的任何想法?
我在cakephp做项目.
我想在cakephp Style中写下面的查询.我写了50%.请帮我
$这个 - >登录 - >找到( '全部')
SELECT * FROM login
ORDER BY FIELD(profile_type, 'Basic', 'Premium') DESC;
Run Code Online (Sandbox Code Playgroud) 在我的模型beforeSave方法中,如何检查保存操作是INSERT还是UPDATE?
我想添加到模型数据,但只有在插入新行时才会添加.
几个月前我有这样的问题.现在为了隔离问题,我尝试了一种新的方法.我把一个空文件放到我的服务器上.
文件名是"foobar.php".其内容如下:
<?php
echo "hello world";
Run Code Online (Sandbox Code Playgroud)
但是当我尝试进入example.com/foobar.php时,我明白了
DNS 203毫秒
连接3.33秒
发送0毫秒
到第一个字节的时间17.35秒
接收1毫秒总加载时间20.88秒
然后我把另一个名为"foobar.txt"的文件.其内容如下:
hello world<br/>
Run Code Online (Sandbox Code Playgroud)
foobar.txt的加载时间约为0.2秒.
这个网站是在共享主机内,所以我无法获得root Linux访问权限.我试图找出是什么让我的网站变慢.
MaxClients 300
MaxRequestsPerChild 4000
ThreadsPerChild 25
新编辑: 我和我的托管公司谈过.并告诉他们"foobar.php"几乎在20秒内打开.虽然该文件根本没有代码.他们告诉我他们把"foobar.php"放到我们使用同一台服务器的其他网站上.我也试过"othersite.com/foobar.php".它立刻打开了.但"mysite.com/foobar.php"几乎在15秒内开启.什么会造成这种行为?我们对其他网站使用相同的PHP配置,但它们会立即打开..可以是因为我的.htaccess规则吗?还是其他的事情?
新Edit2: 我的提供商告诉我服务器内没有"apd.so"文件.所以我好像不能使用APD.
我应该寻找什么才能找到瓶颈?
什么会限制我的网站?
附加数据:来自phpinfo,我得到了这个:
'./configure'' - prefix =/usr/local/lsws/lsphp5'' - build = x86_64-redhat-linux-gnu'' - host = x86_64-redhat-linux-gnu'' - target = x86_64-redhat-linux-gnu'' - sysconfdir =/etc'' - datadir =/usr/share'' - includenid =/usr/include'' - libdir =/usr/lib64'' - libdcdir =/usr/libexec'' …
我正在使用Postgres(我认为与问题有关)和CakePHP 3.
我有以下单元测试,只是检查以确保模型可以保存有效的数据集.当我运行以下测试时,使用标准的"bake'd"模型单元测试,我得到以下错误.
我认为这是问题所在:
我们正在使用灯具来添加一些基础数据.这是我认为可能导致问题的唯一地方.为此添加信任,在单元测试运行时,我运行以下命令以获取下一个自动递增id值,并返回1,即使它在非测试DB中返回了正确的数字.Select nextval(pg_get_serial_sequence('agencies', 'id')) as new_id;
单元测试:
public function testValidationDefault()
{
$agencyData = [
'full_name' => 'Agency Full Name',
'mode' => 'transit',
'request_api_class' => 'Rest\Get\Json',
'response_api_class' => 'NextBus\Generic',
'realtime_url_pattern' => 'http://api.example.com',
'routes' => '{"123": {"full_route": "123 Full Route", "route_color": "#123456"}}'
];
$agency = $this->Agencies->newEntity($agencyData);
$saved = $this->Agencies->save($agency);
$this->assertInstanceOf('App\Model\Entity\Agency', $saved);
}
Run Code Online (Sandbox Code Playgroud)
错误:
PDOException: SQLSTATE[23505]: Unique violation: 7 ERROR: duplicate key value violates unique constraint "agencies_pkey"
DETAIL: Key (id)=(1) already exists.
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情
这个夹具确实为每个记录设置了ID字段.从夹具中删除它们确实有效,但它会破坏依赖于某些关系数据的其他单元测试.
cakephp ×10
php ×3
cakephp-2.0 ×2
.htaccess ×1
ajax ×1
apache ×1
cakephp-1.2 ×1
cakephp-2.1 ×1
cakephp-3.0 ×1
comparison ×1
database ×1
eclipse ×1
manual ×1
migration ×1
mod-php ×1
offline ×1
postgresql ×1
sql-order-by ×1
unit-testing ×1