Search code examples
coldfusionprimary-keycfwheels

How to rename the primary key field in CFWHEELS?


This is what I've tried... but for some reason "model("user").primaryKey() is still returning the old "User_Id" column...

<cfset table("user_table")>
<cfset property(name="id", column="User_Id") />
<cfset setPrimaryKey(property="id") />

UPDATE
The problem lies within the "Scaffold" plugin. It's using the "COLUMNLIST" instead of the "PROPERTYLIST"

I've repaired this and it seems to be generating properly now.


Solution

  • Originally the question did not state that it was a problem with the Scaffold plugin. However, the solution is to just specify

    <cfset property(name="id", column="User_Id") />
    

    (as stated in the CFWHEELS documentation)

    The bug itself, lies within the Scaffold plugin which uses "COLUMNLIST" to generate the HTML. The HTML is then referencing "#users.user_id#" which doesn't exist since it's now called "id".

    I changed the Scaffold plugin to use "PROPERTYLIST" and now it's fine.

    Very sorry for confusion!