【问题标题】:Load database table in controller cakephp在控制器 cakephp 中加载数据库表
【发布时间】:2012-07-18 17:46:47
【问题描述】:

我为我的预设数据库表制作了一个模型。 现在在我的控制器的操作中,我有:

$this->loadModel('Preset');
$preset = $this->Preset->find();

表格中的每个预设行都有多个字段,我希望$preset 变量包含一行中的所有信息。如何按名称搜索行,然后从中获取所有其他字段?

【问题讨论】:

  • 为什么没有预设表的模型?
  • @Hoff - 它只是一个简单的 3 行表。我只想在用户提交新项目时从表格中抓取一行。
  • 我不知道如果没有直接查询数据库的模型,您将如何获取数据。听起来您需要做的就是为您的预设数据创建一个模型,进行简单的查找并填充您的字段。你有没有写过任何代码来尝试完成这个?
  • 在这种情况下不使用模型的想法似乎没有必要。这样的代码的目的是什么?为什么从数据库中获取数据的方式很重要?
  • 您使用的是 CakePHP 1.3 还是 2.0+?

标签: database cakephp model controller


【解决方案1】:

假设你的模型是有效的:

$preset = $this->Preset->findAllByName('foo');

您要完成的工作非常简单,并且在 CakePHP's documentation 中得到了很好的介绍。

【讨论】:

  • 同意,我无法发布此问题的答案,而是发布您已经完成的文档链接。
  • 嘿,谢谢你的代码,我想我快到了。 findAllByName 是否返回一个数组,我必须使用 $preset['Preset']['field'] 从字段中获取数据?
  • 来自链接的文档,就在示例的正下方:“返回的结果是一个格式化的数组,就像它来自 find('all') 一样。”跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多