Kohana v3.1.0 ORM _ignored_columns -- 既然它消失了,我该怎么办?

2024-03-08

看来在 Kohana 的 ORM v3.1.0 中_ignored_columns财产已被删除。

处理数据库中不存在的字段的推荐技术是什么?我现在的情况是password_confirm,其中password是一个字段,但我们要求用户输入密码两次。


您可以传递额外的验证对象来保存、创建和更新。所以你的例子看起来像:

/**
 * Password validation for plain passwords.
 * 
 * @param array $values
 * @return Validation
 */
public static function get_password_validation($values)
{
    return Validation::factory($values)
        ->label('password', 'password')
        ->label('password_confirm', 'repeat password')
        ->rule('password', 'not_empty')
        ->rule('password', 'min_length', array(':value', 8))
        ->rule('password_confirm', 'matches', array(':validation', ':field', 'password'));
}

/**
 * Create user account
 * 
 * @param array $values 
 * @param array $keys
 * @throws ORM_Validation_Exception
 */
public function create_user($values, $keys)
{
    $external = Model_User::get_password_validation($values);

    $this->values($values, $keys);
    return $this->create($external);
}

请注意密码验证如何传递到 create 方法中。

The $keysvalue 指定应将哪些值保存到模型中。 “password_confirm”不在该列表中,因此被忽略。此功能也与安全相关,您不希望用户在 POST 请求中手动设置 id。

然后你可以通过调用创建一个用户create_user:

$user->create_user($_POST, array('username', 'email', 'password'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kohana v3.1.0 ORM _ignored_columns -- 既然它消失了,我该怎么办? 的相关文章

  • 如何使用 PHP 将字符串按大写字母分解?

    我有一个字符串 CamelCaseString 我想对大写字母进行explode split 或一些更好的方法来将该字符串分解为单个单词 最简单的方法是什么 解决方案更新 此链接指向一个略有不同的问题 但我认为答案通常比本页当前问题的答案更
  • 检查字符串是否编码为 UTF-8

    function seems utf8 str length strlen str for i 0 i lt length i c ord str i if c lt 0x80 n 0 0bbbbbbb elseif c 0xE0 0xC0
  • 无法访问 WordPress 中声明的全局变量

    我有以下代码 g value something print g value function get value global g value print g value print get value 当我在独立的 PHP 脚本中运行它
  • 当php脚本通过ajax运行时显示进度条

    我有一个通过 ajax 向服务器提交值的表单
  • 如何缩短 PHP if 语句?

    我有一个 if 语句 我需要将单个字符串与许多不同的选项进行比较 我在下面发布的代码非常清楚地表明了我的意思 我知道有两种方法可以做到这一点 但另一种甚至更长 那么 是否有任何函数可以以更短的方式实现类似的功能 我的要求可能看起来很愚蠢 但
  • 获取php中两个日期之间的天数[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我试图获取两个日期之间的天数 但返回的结果不正确 这是我的尝试 t time get the time Y m d g
  • .htaccess 主要用于 localhost

    我在本地主机上使用 wamp server 虚拟主机名为www xyz com我有一个通过 git 设置的部署服务 它将代码部署到服务器上www xyz in 这是我的 htaccess 代码 RewriteEngine on Rewrit
  • 如何在javascript中获取基本url

    我正在建立一个网站代码点火器 http ellislab com codeigniter 我有各种资源 我用base url http ellislab com codeigniter user guide helpers url help
  • Facebook Graph API - 如何用新行发布到墙上?

    我正在使用 Facebook Graph API 但遇到一个问题 我找不到任何方法如何使用一些 HTML 代码发布到墙上or新线路 怎么办呢 这是我的代码
  • Pear PHP UML 类图 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试创建现有代码的图形表示 我尝试使用 VS PHP 使用 Visual Studios 201
  • 在 PHP 中的请求之间存储对象而不进行序列化

    我正在用 PHP 编写一个有状态的 Web 应用程序 其中状态可能包含大量对象 目前 我将所有这些对象保存在 SESSION 中 并在请求结束时将它们序列化 这有点痛苦 因为序列化整个会话需要几秒钟 而反序列化则需要更多时间 我想尝试 AP
  • PHP UTF-8 问题 - 如果我在 PHP 中创建一个字符串...它是 UTF-8 格式吗?

    在 PHP 中 如果我创建一个像这样的字符串 str bla bla here is my string 然后我可以使用 mbstring 函数将该字符串作为 UTF8 进行操作吗 Will this work str mb strlen
  • 如何从数据库生成 Doctrine 实体并使用 PSR-4 自动加载?

    使用教义2 5使用 PSR 4 自动加载并将已设计的数据库模式转换为实体类 注释 问题是将导出的文件放入正确的目录结构中 作曲家 json autoload psr 4 Application src require doctrine or
  • Mysqli get_result替代方案

    我刚刚将所有 sql 查询更改为使用 mysqli 准备好的语句 为了加快这个过程 我创建了一个函数 称为performQuery 取代mysql query 它需要传入查询 绑定 如 sdss 和变量 然后执行所有准备好的语句 这意味着更
  • PHP 中消息队列和工作系统的有效架构?

    我正在尝试了解我想要在 PHP 应用程序中实现的消息队列模型和作业 我的目标是卸载需要发送到多个第三方 API 的消息 数据 因此访问它们不会减慢客户端的速度 所以将数据发送到消息队列是理想的 我考虑过仅使用 Gearman 来保存 MQ
  • 如何在数据库中找到实际的联系表7结构?

    我想找到我所有表单的实际代码 有很多 例如 cf7 代码如下所示
  • Mysql为简单频繁查询创建排序索引性能

    我正在处理一个包含大约 400 万条消息条目的 mysql 表 并尝试根据时间戳选择最新的 50 条消息 另一个要求是返回的消息不以固定前缀开头 问题是单个查询大约占用 25 的 cpu 并且最多需要 1 5 秒 该查询经常由多个客户端执行
  • 如何使用 Symfony2 使 form_rest() 不显示字段?

    我已经开始使用 Symfony2 但遇到了一些问题 我想手动渲染字段 但它不起作用 因为我尚未渲染的字段显示为form rest 函数也一样 所以我有两个相同的字段 这是我的代码 div form errors form contenu d
  • Chrome 问题 - 视频流和会话冲突

    我在使用 javascript 和 PHP 实现视频时遇到问题 索引 php session start do other stuff include video php 视频 php
  • 为什么 sql 字段名称中不应该包含逗号?

    人们一直告诉我列名中不应包含空格 我只是想知道 这是为什么 这是我为学校创建的一些数据库表遇到的问题 字段名称包括 Preble 和 Darke 相反 它们需要是 普雷布尔县 俄亥俄州 和 达克县 俄亥俄州 如果它们是行名称 我只需创建一个

随机推荐

  • 如何使用 php if ($text contains "World") 搜索文本

    如何使用 php 搜索文本 就像是 除了更换if text contains World 具有工作条件 在你的情况下你可以只使用strpos http php net manual en function strpos php or str
  • 如何将十六进制字符串转换为 u8 切片?

    我有一个看起来像这样的字符串 090A0B0C 我想将其转换为看起来像这样的切片 9 10 11 12 我最好怎样做呢 我不想将单个十六进制字符元组转换为单个整数值 我想将由多个十六进制字符元组组成的字符串转换为多个整数值的切片 如果您想避
  • 如何在 UITableView 中像 iMessage iPhone 应用程序一样显示时间

    我在像 iMessage iPhone 应用程序一样滑动时无法在 UITableView 中显示时间 我已启用属性 显示水平滚动条 and 垂直弹跳 但它不能像 iMessage 应用程序一样正常工作 它需要压缩 UITableViewCe
  • Angular 无法使用 res.download 从 Express 获取文件下载

    在我的应用程序中 我在后端创建一个文件 然后我希望通过浏览器下载将其传递给用户 我已经尝试过无数次 这是 Express 后端 app get download req res gt res download filename txt fu
  • R中的指数曲线拟合

    time 1 100 head y 0 07841589 0 07686316 0 07534116 0 07384931 0 07238699 0 07095363 plot time y 这是一条指数曲线 在不知道公式的情况下如何在这条
  • 多态值类型和接口

    我有一个多态值类型 如下实现 class ShapeValue public template
  • 错误:CI_DB_mysql_result 类的对象无法转换为字符串

    我是 CodeIgniter 的新手 我尝试阅读 CI 的文档 但仍然无法解决我的问题 也许这里有人可以帮助解决我的问题 这是我的代码 在我的控制器中 class Registration extends CI Controller fun
  • 将第二个数据库添加到 alembic 上下文中

    我想在迁移过程中连接到第二个外部数据库 以将其部分数据移至本地数据库中 最好的方法是什么 将第二个数据库添加到 alembic 上下文后 我不知道该怎么做 在迁移期间如何在数据库上运行 SQL 语句 这就是我的env py现在看起来像 fr
  • 将多个变量从 HTML 传递到 PHP

    我想将两个变量传递到我的 php 页面 下拉变量工作得很好 但是当我添加一个附加变量时 它只发送 0 而不是我在表单中输入的内容 我觉得我已经非常接近这个问题的解决方案了 当我替换这一行上的数字时 xmlhttp open GET getd
  • Haskell:“Num [a] => a”和“Num a => [a]”之间有什么区别

    显然 我的类型签名已关闭 我现在已经知道原因了 现在 我有兴趣了解有关 GHCI 对我的拼写错误推断的签名的更多信息 我试图让这段代码工作 elemNum Eq a Num b gt a gt a gt b elemNum e l f e
  • 为什么我的 build.gradle android studio 中没有 allprojects{}?

    我正在开发一个 Android 应用程序 我需要将 PayPal 付款方式添加到该应用程序 所以我使用这个 https developer paypal com docs business native checkout android h
  • MariaDB Galera集群设置问题

    我正在尝试启动并运行 mariadb 集群 但它对我来说不起作用 现在我在 64 位 Red hat ES6 机器上使用 MariaDB Galera 5 5 36 我通过这里的存储库安装了 mariadb mariadb name Mar
  • pandas 切割多列

    我希望在多个列中应用一个容器 a 1 2 9 1 5 3 b 9 8 7 8 9 1 c a b print pd cut c 3 labels False 效果很好并创造了 0 0 2 0 1 0 2 2 2 2 2 0 但是 我想应用
  • 显示来自MySQL数据库的php中的所有表名

    好吧 我对 PHP 和 SQL MySQL 还很陌生 所以非常感谢您的帮助 我觉得我采取了正确的方法 我在 php net 上搜索 MySQL 显示所有表名称 它返回了一个已弃用的方法 并建议使用 MySQL 查询SHOW TABLES F
  • 如何更改Font Awesome感叹号三角形图标的内部白色?

    如何更改图标的内部 白色 颜色 i class fa fa exclamation triangle i 附 正在申请 i class fa fa exclamation triangle style color red i 不是答案 因为
  • 将 Admob 添加到 Libgdx 游戏

    我正在休憩本教程 https www youtube com watch v cwAN4LMXo58但是当我尝试进入货币化页面时 我无法货币化或添加任何横幅 因为与教程不同 我的游戏不在商店中 我的问题是 我是否需要在不添加 admob 代
  • 安排交互式 UILocalNotification - Obj-C

    我正在尝试安排一个互动UILocalNotifaction 我的尝试是使用以下代码 这是我从中获取的tutorial https nrj io simple interactive notifications in ios 8 NSStri
  • Twilio 客户端语音通话扬声器开/关问题

    我在用Twilio 客户端 https www twilio com docs api client ios用于通话的语音通话服务 在这里 我遇到了斯皮克开 关功能的问题 我可以将通话静音 取消静音 但无法打开 关闭扬声器 我有两个功能的相
  • 使用正则表达式匹配多行文本

    我正在尝试使用 Java 来匹配多行文本 当我使用Pattern类与Pattern MULTILINE修饰符 我能够匹配 但我无法这样做 m 相同的图案与 m 并使用String matches似乎不起作用 我确信我错过了一些东西 但不知道
  • Kohana v3.1.0 ORM _ignored_columns -- 既然它消失了,我该怎么办?

    看来在 Kohana 的 ORM v3 1 0 中 ignored columns财产已被删除 处理数据库中不存在的字段的推荐技术是什么 我现在的情况是password confirm 其中password是一个字段 但我们要求用户输入密码