Note the upgraded forum! If you are experiencing issues logging in, you may need to reset your password which should send an email. If the email doesn't arrive, be sure to check your spam folder just in case.

Can i use mysql varchar as primary key in fuel cms

edited January 10 in Modules

hi, all,
i recently start to use fuel cms. in my requirement need a string as table primary key. like guid etc. when i develop the code, i found like the key value is 123a, list page no problem, edit page is ok too. but when i save the data, the key value will become to 123. anybody can tell me what happened. the cms can't use string as a primary key or need some config?

ths.

Comments

  • Tough to say what may be happening but it looks like it's trying to cast the ID value to be and int. A simple way to debug could be to use one of the model hook methods like "on_before_validate" or "on_before_save" to see if the value that is being prepped for save at those stages is correct:

    public function on_before_validate($values)
    {
        $values = parent::on_before_save($values);
    
        print_r($values); exit();
    
    
        return $values;
    }
    

    http://docs.getfuelcms.com/general/models#hooks

    Another option would be to have that key just be a unique indexed field on the table and you can specify in the model that column as a unique field to add validation for that.

  • Thanks for your reply admin! one thing need to confirm . in cms varchar as primary key is allow right? the cms have no limint about this?

  • edited January 14

    Problem have been solved. add this codes to model config

    public $key_field = table primary key
    public $has_auto_increment = FALSE;
    public $hidden_fields = array('table primary key');
    

    then everything will be ok!

    ths!!!

Sign In or Register to comment.