newjz 2017-07-12 12:39:40 5992次浏览 0条评论 2 1 0

有一些表 ,表结构是一样的, 表名是根据年号命名, yii2 中生成模型只生成一个,然后表名是在控制器中实例化后动态添加。

修改模型tableName方法,增加静态属性table

public static $table='';
public static function tableName()
{
    return self::$table;
}

//控制器中调用并指定表名;
$price= new RebarPrice();
$price::$table='t_rebar_price2017';//此处可以拼接表名
$price=$price::findOne(['id'=>1]);//查询

//很简单,不用再拼接sql 语句了。
觉得很赞
    没有找到数据。
您需要登录后才可以评论。登录 | 立即注册