Codeigniter Netbeans使用MysqlObjects自动完成

时间:2012-12-03 14:55:31

标签: php mysql codeigniter netbeans autocomplete

我需要在netbeans中使用codeigniter数据库mysql对象进行自动完成。 我已经为标准类启用了自动完成功能,但是如果我得到mysql结果则没有任何内容(因为通过http://php.net/manual/en/function.mysql-fetch-object.php动态创建了对象 我的解决方法是声明一个只包含字段的model_raw类。

/**
 * 
 * @param int $id
 * @return Account_model_raw 
 */
public function get_Account($id) {
    if (is_int($id) === FALSE)
        return null;

    $query = $this->db->get_where($this->table, array('id' => $id), 1);
    if ($query->num_rows() <= 0)
        return null;
    $ret = $query->row();

    return $ret;
}

class Account_model_raw{
var $id;
var $login;
var $password;
var $lastlogin;
}

现在,如果我使用get_Account方法,我可以在netbeans中获得自动完成功能。

我的问题是,如果有一个更好的方法并保持类与mysql同步。如果表格改变怎么办?我不想手动编辑数据库和原始类文件。

也许这些原始文件可以使用脚本自动创建?

1 个答案:

答案 0 :(得分:0)

您可以使用MY_Model或ORM库。

https://github.com/jamierumbelow/codeigniter-base-model

http://redbeanphp.com/

因此,如果您使用的是X和Y对象,则不需要在模型中显式声明,您可以使用X表声明模型的方式使用这些库,然后可以调用ORM提供的函数来访问数据库中的字段值。

PS:不要依赖自动完成这些类型的功能,虽然您不会从NetBeans中看到数据库中的内容,但您至少可以依赖库来了解您为其提供的x,y对象的放置位置。