Is it acceptable to use
id in HTML forms and subsequent code processing (controller, view, model, repository layers)?
For example I need to show something like this on a web page:
Select Motor Choice: * 460/50/3 * 380/50/3 * 460/60/3
In HTML this can be done with a
radio control, where each line has a
value attribute, which is not shown, and
text, which is shown on the screen.
I have above encoded in the database like so:
id, motor_description 1, "460/50/3" 2, "380/50/3" 3, "460/60/3"
I can use the
id for the
value in HTML
radio control, and i can use that
id internally as well in my Controller where I process the input to do lookup on the motor.
id is a surrogate key, and it doesn't mean anything, will I do better instead to avoid using it, and instead to perhaps use more user-meaningful information, such as the
motor_description field to look up the data in the table and do other processing related to my business needs?
My concern here is ... even though I am using surrogate key in the database table, do I continue using it as well in the rest of my application, or is it best to avoid doing so?
In other words, do I let the database's surrogate key "spill out" into other aspects of my code, or do I avoid doing so?