圆般 2012-05-24 17:15:21 3784次浏览 6条回复 0 0 0

数据表有一个age字段 不过age如果仅仅是注册时候输入的 那么过去多少年也还是那个年龄 显然不行 所以仅仅是在gridview里通过一个函数计算出年龄。但是计算出的字段值用gridview自带的检索框又不能用来检索。 如果内建一个transaction先根据birthdate 字段生成 age的值 再直接检索 可是 transaction 又不知道怎么写 因为 age的值是依靠 birthdate计算的

  • 回复于 2012-05-24 17:51 举报

    改搜索,计算方式和gridview里计算年龄的方式一样呢

  • 回复于 2012-05-24 23:57 举报

    明确一点 我用的一个类组件来完成计算年龄的 检索时候 用的应该是 CDcriteria类的compare方法来完成检索的 实际检索的是模型里的数据 而不是 通过value里计算方法算出来的

  • 回复于 2012-05-25 09:29 举报

    你搜索表单里填入的是年龄值是吧?那传到搜索方法里时你按照你计算value的方式反过来计算出类似模型里的数据再搜索呢

  • 回复于 2012-05-26 22:12 举报

    尽管您的想法很好 可是依照我之前实际测试的结果 存在一下问题
    比如 age = 15的情况 计算出的出生日期是一个范围而不是一个固定的日期 如果是一个固定日期则非常容易处理 直接传入 compare就可以了
    但是范围 要怎么传进去我还真不会

  • 回复于 2012-05-28 09:20 举报

    那就自己写sql语句执行,查询完了得到Id,再compare Id

  • 回复于 2012-05-31 15:35 举报

    完全。。。。

您需要登录后才可以回复。登录 | 立即注册