-
Notifications
You must be signed in to change notification settings - Fork 502
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enum enhancement #10
Comments
I try to looking in custom-bindings.js but not found anything about enum yet, is that mean we must write new rule for this enhancement? |
Good suggestion! I've implemented this for 2.2.0. If you're curious how it was done, check this out: Basically, I had to adjust the Enum constructor to check for both array possibilities. So consider this example:
In this case, the $options property in the Enum class would end up with this value:
Then I had to adjust the filter and edit fields to include the optionsValue and optionsText properties of the Knockout options binding. Custom bindings are only needed for special fields that can't be handled by existing bindings. As you can see, the enum field uses the custom chosen binding which turns the field into a jQuery Chosen object, so we don't need to do anything there. We need to handle that in a binding because Knockout refreshes the DOM whenever a viewModel observable updates. |
Wow! Thanks |
I store 0,1, 2 for user_role in my database and I can't use enum for this field. this is a little bit hack for my ugly DB structure. I changed enum.php line 32 from to and now I can used 'options' => array(
'00' => 'User',
'01' => 'Normal Curator',
'02' => 'Fetured Curator'
), @janhartigan may you change |
Update: my solution is work grate in filters but doesn't work in edit, any idea? (T T) |
OK so the issue here is that you shouldn't be using the enum field as you are. Enums are for text-only fields that don't have an ID. I assume you have a roles table, correct? So why not make a roles relationship and set up a relationship field? |
I think it will better if we can set display text and value of options by array key,value like this
The text was updated successfully, but these errors were encountered: