我正在使用 cakePHP 3.7
我想从控制器创建一个临时表,然后使用它(带有一些条件和连接)来搜索一些要显示的数据。
表结构目前是静态定义的,即它具有的字段是固定的,因此我能够定义一个实体或一组字段。但是,内容会因用户输入而异。这意味着我想用准备好的 SQL 语句定义表,我将绑定到用户输入的变量。
我知道如何处理准备好的陈述。
但是我还没有完全理解正确的方法是什么,让 cakePHP 创建我的临时表并为其加载模型。
我在CakePHP 3: Best Practice for Temporary SQL Tables上找到了@ndm 的有用答案,并且 在我所做的尝试中,我为表指定了 setTemporary(true)。
但是我不断收到“表不存在”异常,所以我想我没有正确构建项目类和代码。正如@ndm 建议的那样,我无法通过使用获得的查询来创建表
$schema->createSql($connection);
因为 sql 依赖于用户输入。
其他找到的 stackoverflow 答案是关于与 3.x 不同的 cakePHP (2.x) 的旧版本
有人可以给我一些更详细的提示,说明在我的 cakePHP 项目中创建和使用使用准备好的语句创建的临时表的方法是什么?