CakePHP 保存外键问题

2023-12-22

我在将“用户”表的外键保存在另一个名为“基本”的表中时遇到问题。我试图向用户询问一系列问题,每个完成的系列问题和用户 ID 都应该保存到相应的表中。

这是在模型中进行验证后保存我的数据的内容。验证成功,所有数据均已保存,但外键保存为 0。

public function pageone() {
    if ($this->request->is('post')){

        $this->request->data['Table1']['user_id'] = $this->Auth->user('id');
        if ($this->User->saveAll($this->request->data)) {
            $this->redirect(array('action'=>'pagetwo'));
        } else {
            $this->Session->setFlash('Your data have not been saved');
        }
    }
}

在我的模型中,我使用以下代码声明了外键:

var $name = 'Table1';
var $belongsTo = array(
    'User' => array(
        'className' => 'User',
        'foreignKey' => 'user_id',
        'conditions' => '',
        'fields' => '',
        'order' => ''
    )
);

这应该声明外键,对吧?我的外键的列名称称为“user_id”。数据类型均为 INT。数据库方面是否还有其他问题?提前致谢!

更新:所以 - 我现在将我的用户 ID 隐藏在隐藏字段中。该字段将在我创建的任何其他字段中输入数据库(即使数据类型与 INT(11) 相同),但不会保存到名为“user_id”的字段中。例如,我可以将用户 ID 保存到名为 my_id 的字段中,但 user_id 仍然不行。我认为这排除了数据库问题,并且与我关联模型的方式有关。


请在用户模型中添加关系

var $hasOne = array(
'Basic' => array(
    'className' => 'Basic',
    'foreignKey' => 'user_id',
    'conditions' => '',
    'fields' => '',
    'order' => ''
   )
 );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CakePHP 保存外键问题 的相关文章

  • MySQL如何在没有过程/函数的情况下执行命令块

    我尝试在 MySQL Workbench 上运行一段 SQL 命令 就像在 SQL Server 上一样 但它告诉我 声明在此位置无效 我在网上看到了各种这样的例子 我真的不明白为什么会出现这个错误 一些提示 代码 其中 SQL Serve
  • 导入mysql数据库出错

    我导出我的数据库并导出到另一台计算机使用 phpmyadmin 但它错误 静态分析 分析过程中发现2处错误 意想不到的角色 靠近位置 53 的 无法识别的语句类型 位置 1 的 div 附近 SQL查询 div class error h1
  • 升级到 Yosemite 后 Apache 配置损坏

    昨天我升级到 Yosemite 现在我的 Web 开发本地配置不再起作用 我设法在下面设置了一个 userdir Users user public html我可以通过以下方式访问所有网站localhost user websitename
  • 在php中搜索字符串,搜索字段包含空格

    这是我的代码 div style display inline block div 我对空白有疑问 如果我仅使用 适合模型 或使用 11 2000 但不是两者组合 它会找到字符串 我需要将它们结合起来 否则就没用了 编辑 我不能做这样的事情
  • Laravel 5.1 - 获取当前路线

    我正在开发一个为每个视图自动获取资源 css js 的函数 所以它工作得很好 让我们说 http mywebsite com displayitems http mywebsite com displayitems home about 等
  • 如何使用 Libsodium-PHP 加密/解密 AES

    我需要用 PHP 加密 解密数据 我对此完全陌生 但是我读到 Libsodium PHP 是 AES 加密的最佳工具 就像我研究过的其他 PHP 加密库一样 Libsoduim PHP 似乎几乎没有提供如何使用该库的文档 我能够找到 任何有
  • MySQL查看数据是否为NULL

    我需要在 Select 中放置一个 Case 来检查我添加到视图中的数据是否为 NULL 在这种情况下我希望它只输入零 或者不输入零 你的意思是这样的吗 SELECT IF field IS NULL 0 field 还有 IFNULL S
  • Navicat 中的 MySQL 视图 - 如何定义“主键”?

    当我在 Navicat 中定义视图时 经常会收到以下消息 xxx 没有主键 对此表的更新将使用以下伪语句完成 UPDATE xxx SET ModifiedFieldsAndValues WHERE AllFieldsAndOldValue
  • 当 url 不存在时 file_get_contents

    我正在使用 file get contents 访问 URL file get contents http somenotrealurl com notrealpage 如果 URL 不真实 则返回此错误消息 如何让它优雅地出错 以便我知道
  • 在评论中查找不同风格的日期

    我还有一个问题要问preg match 我有一个表 其中评论的日期写在评论本身内 手动 现在我需要提取该日期并将其放置在不同的列中 我发现评论和日期的样式如下 id warning sent warning date 6109 2011 0
  • 使用以太坊 RPC 获取代币余额?

    如何通过以太坊RPC显示代币余额 id 0 data array data jsonrpc 2 0 data id id data method eth call data params from gt 0x0 to gt 0x0 data
  • 循环遍历数据数组并打印“递增”字母

    我需要循环遍历数据数组并为每个数组值打印一个 递增 字母 我知道我可以这样做 array array 11 33 44 98 1 3 2 9 66 21 45 array to loop through letters array a b
  • 如何从 php 中的字符串中删除 unicode 字符 (LEFT_TO_RIGHT_MARK)

    我试图在将字符串编码为 JSON 之前从字符串中删除从左到右标记 u200e 和从右到左标记 u200f 以下两者似乎都不起作用 s mb ereg replace u200e s s preg replace u200e u s s pr
  • 在php中用逗号替换空格和换行符

    我搜索过但找不到任何有帮助的东西 所以 我有一堆数据 我基本上只需要在它们之间添加逗号 这些数据都来自记录 所以它的形式如下 13 566 888 958 898 我需要像这样输出 13 566 888 958 898 如果我可以将任意 2
  • Yii2 - 如何自动加载自定义类?

    我创建了以下自定义类 我想在我的 Yii2 应用程序中使用它 common components helper CustomDateTime php namespace common components helper class Cust
  • Laravel Eloquent ORM 返回 stdClass 而不是实际模型

    我正在做 mymodel MyModel where url domain gt first 这返回了一个 MyModel 对象 现在 不知何故 它返回了一个 stdClass 发生了什么 laravel 有更新吗 我改变了什么吗 Than
  • 如何读取 sql 查询到 pandas dataframe / python / django

    我在下面使用这个views py获取应用程序 from django db import connection def test request cursor connection cursor sql SELECT x n from ta
  • WooCommerce - 谢谢和“我的帐户”查看订单页面上的自定义通知

    在 WooCommerce 上我有一个自定义字段days manufacture对于具有不同 整数 值的每个产品 我还有这个代码 可以在购物车页面上显示一条消息 其中的最高值是 生产天数 add action woocommerce bef
  • 使用 Javascript 编辑和保存用户 HTML - 安全性如何?

    例如我有一个Javascript 支持的表单创建工具 您可以使用链接添加元素的 html 块 如输入字段 并使用 TinyMCE 来编辑文本 这些是通过自动保存功能保存的 该功能在特定事件的后台执行 AJAX 调用 被调用的保存函数负责数据
  • 关于mysql建表的几个问题

    CREATE TABLE favorite food person id SMALLINT UNSIGNED food VARCHAR 20 CONSTRAINT pk favorite food PRIMARY KEY person id

随机推荐

  • 如何使用 jquery 动态更改 iframe 中的内容?

    我想知道是否可以有一个带有 iframe 和一些 jquery 代码的网站 每 30 秒更改 iframe 内容 内容位于不同的网页中 像这样的东西
  • setInterval() 不重复。仅有效1次

    我试图让 div 的 left 属性自行改变 当你将鼠标悬停在上面时每秒改变一次 所以我做了这个 div scroll left hover function var left num div license video css left
  • 如何使用 ggplot 将点随机散布在圆内,而不聚集在中心周围?

    我想用ggplot画一个圆 然后在圆内散布点 我有代码 摘自这个答案 https stackoverflow com a 68606605 6105259 这让我非常接近我想要的 但是 我希望点分散在圆内randomly 但现在我在中心周围
  • WPF Datagrid 中的 ItemTemplateSelector 与 AutoGenerateColumns

    在我们的数据网格中 我们使用ItemTemplateSelector根据绑定到特定单元格的数据在两个数据模板之间切换 由于列数取决于我们正在使用的当前数据集AutoGenerateColumns in our DataGrid 看来这个特殊
  • 有没有办法以编程方式将 iOS 设备的相机焦点设置为无限远?

    我正在创建一个应用程序 可以锁定相机焦点以进行视频录制 我想将焦点锁定到无限远 而无需用户手动调整焦点 这可能吗 谢谢 可悲的是没有 正如 Artem 所说 你可以将相机设置为焦点锁定模式 进入自动对焦模式 对焦 然后锁定 或连续自动对焦模
  • AndroidManifest.xml 使用 `android:name="io.flutter.app.FutterApplication"`

    升级到Flutter 2 10后 出现以下错误 Warning Your Flutter application is created using an older version of the Android embedding It i
  • Magento 愿望清单 - 删除项目

    我构建了一个自定义脚本 用于使用 AJAX 在愿望清单中添加和删除项目 添加产品不是问题 但我不知道如何删除项目 Magento 版本是1 5 1 0 脚本位于 scripts 看起来像这样 include once app Mage ph
  • 如何为 GAE 数据存储数据模型创建两个唯一的可查询字段?

    首先进行一些设置 上周 我在实现我构建的一种特定方法时遇到了麻烦 该方法允许我管理与一个 db Model 对象关联的两个唯一字段 由于这是不可能的 因此我创建了一个父实体类和一个子实体类 每个类都为 key name 分配了一个唯一值 你
  • Rails new 给出“在任何源中都找不到正确版本的 Railties (4.2.5.1)”错误

    我正在尝试将 Rails 5 0 0 rc1 与 Ruby 2 3 1 一起使用 但是 如果我尝试在 programming 目录中创建一个新项目 我会得到以下信息 Documents Programming rails new foo C
  • 未找到资源样式/LaunchTheme

    我刚刚将应用程序的图标更改为较新的图标 现在每当我尝试构建并运行该应用程序时 我都会收到以下错误 Project build app intermediates manifests full debug AndroidManifest xm
  • 将 GZIP:ed 文本存储在 mysql 中?

    对于较大的应用程序和数据库来说 在将文本数据插入数据库之前对其进行 GZIP 压缩是很常见的事情吗 我猜想在再次解压缩之前 对实际文本字段的任何全文搜索都将不起作用 我还没有看到太多这样的事情 因为它基本上可以防止人们对 MySQL 端的数
  • Redux、规范化实体和 lodash 合并

    我使用 Redux React 和 Lodash 以及相当标准的标准化实体存储 当我在 redux 减速器中合并新实体时 对所有现有实体的引用都会发生变化 尽管没有被修改 从而导致任何纯组件重新渲染 lodash 合并是否有一种替代方法 可
  • 铁轨变了?方法总是错误的

    我正在尝试检查我的模型中复选框值是否已更改 如果改变了我想要我的方法set ip setting跑进去before save but my x即使我更改值 变量也总是返回 false 为什么它总是返回错误 我不明白我做错了什么 before
  • C 和 C++ 中类型的互操作性

    一个非常简单的问题 是否有任何保证 Cint和 C 是一样的int 在同一系统上 不言而喻 这当然是一个纯粹的理论问题 C 和 C 标准使用相同的语言来定义基本类型 但是 Fortran 2003 明确指出 use ISO C BINDIN
  • 在 C 中将块指令作为宏的参数传递

    我不知道这是否可能 我想像参数一样在宏中传递指令块 我将向您展示一个示例 define ADD MACRO size BLOCK for int i 0 i
  • ASP NET MVC 3 - 如何首先使用两个表和 Database.Setinitializer 在代码中重置数据库?

    我的问题在于缺乏MVC经验 基本上 我在数据库中有两个表 人 提供 对于每个我都创建了一个模型 一个控制器和一个模型 因此结构如下所示 public class Offer public int OfferID get set public
  • 发送大尺寸图像、视频和音频时 XMPP 客户端断开连接

    我已经使用 robbiehanson xmpp 示例实现了 xmpp 我可以聊天 也可以发送图像 我发送的图像被转换为 nsdata 并进一步转换为 Base64String 然后发送字符串 self xmppStream sendElem
  • Google 日历 API 的换行符?

    我正在尝试从我的网络应用程序中插入 Google 日历中的事件描述 但无法获取 n 或 br 被解释为换行符 谷歌日历如何解释换行符 帮助将不胜感激 您使用特定的客户端库吗 如果使用该协议 只需在内容元素中添加换行符即可
  • Django 应用程序初始化代码(例如连接到信号)

    我需要一个地方来运行特定于应用程序的初始化代码 例如连接到信号 当我将代码放入 init py我最终得到了模型的循环导入 有没有办法在框架设置时和执行任何请求之前触发函数 我使用相当旧的 django 96 6 版本 但我也对当前版本的解决
  • CakePHP 保存外键问题

    我在将 用户 表的外键保存在另一个名为 基本 的表中时遇到问题 我试图向用户询问一系列问题 每个完成的系列问题和用户 ID 都应该保存到相应的表中 这是在模型中进行验证后保存我的数据的内容 验证成功 所有数据均已保存 但外键保存为 0 pu