业务经理

微信扫描以上二维码

028-61286886

技术咨询

有一个栏目 模块【news】栏目公共模型字段 需要验证重复,有什么好的办法吗?

迅睿框架 更新 2021-07-25 14:55:26 乐发发

有一个栏目 模块【news】栏目公共模型字段  需要验证重复,有什么好的办法吗?

已经添加了不少内容,但是用的是模块栏目字段,无法想模块内容字段那样进行验证


image

方案

  • 醉猫猫 #1 · 2021-07-25 12:43:02
    https://www.xunruicms.com/doc/1082.html
    重写Content类:检测重复标题不让发布
  • 乐发发 #2 · 2021-07-25 12:48:59
    醉猫猫 大哥我不会写呀 😢 😢 😢
  • 迅睿框架联合创始人 #3 · 2021-07-25 12:52:01
    赞同一楼的思路
  • 乐发发 #4 · 2021-07-25 12:56:48
    迅睿框架联合创始人 可以帮忙写一下代码吗?
  • 醉猫猫 #5 · 2021-07-25 12:58:20
    乐发发 拿news模块标题为例 App/News/Models/ 这个目录下新建一个Content.php 文件文件内容
    <?php namespace Phpcmf\Model\News;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
            if ($this->db->table($this->mytable)->where('id<>', (int)$id)->where('title', $data[1]['title'])->countAllResults()) {
                return dr_return_data(0, '标题重复了');
            }
            return $data;
        }
        
       
    }

  • 乐发发 #6 · 2021-07-25 13:22:06
    醉猫猫
    image

    image
    这个文件怎么改,随便改一下就报错,不知道怎么改,可以帮忙改一下吗
    image
  • 醉猫猫 #7 · 2021-07-25 13:25:37
    加QQ
  • 醉猫猫 #8 · 2021-07-25 14:52:26
    满意答案
    /config/custom.php 自定义函数 function dr_post_spbm($value, $data = [], $old = []) { $db = \Phpcmf\Service::M()->db->table('1_news_category_data')->where('id<>', (int)$id)->where('spbm', $value)->countAllResults(); if (!$value) { return dr_return_data(0, '没有填写'); } elseif ($db) { return dr_return_data(0, '重复了'); } return dr_return_data(1, 'ok');}公共字段里如下图设置,只测试了文本(text)字段
    image
    已帮楼主解决 发出来留给需要的朋友吧
  • 乐发发 #9 · 2021-07-25 14:55:26
    @醉猫猫:谢谢大哥,非常非常好,已经解决

迅睿系统漏洞

GEO系统
GEO系统(2026-09-15)
运营客户端,防止误触阴影处关闭对话框
独立站群系统
独立站群系统(2026-09-14)
子站独立部署时修复同步附件失败问题
在线客服
在线客服(2026-09-13)
修复删除会话报错问题 删除会话时联动删除聊天图片
在线考试竞赛系统
在线考试竞赛系统(2026-09-12)
增加投票功能 考试功能拓展 注意:更新后需要执行系统更新,更新数...
网上信箱
网上信箱(2026-09-12)
修复新版本兼容问题
GeoSeo收录宝
GeoSeo收录宝(2026-09-12)
1 优化Update.php文件,解决版本在线升级不完整问题 2 ...
GeoSeo工具箱
GeoSeo工具箱(2026-09-11)
修正历史记录推送
微信系统
微信系统(2026-09-11)
增加数据统计总览界面 账号管理增加服务和公众号的区别 菜单管理支持更...
答题系统
答题系统(2026-09-11)
一站式在线答题系统,支持真题考试、题库练习和错题本,适合培训、考证、...
阿里云滑动验证码
阿里云滑动验证码(2026-09-10)
采用阿里云验证码替换迅睿系统自带的图片验证码和滑动验证码。后台设置方...