More custom field revisions
Gervase Markham
gerv at mozilla.org
Wed Apr 30 21:23:10 UTC 2003
Sean McAfee wrote:
> And when you later create product N+1, and want it to have the same
> "global" fields as the original N products, do you need to remember which
> fields you'd previously added to the first N and add them individually
> to N+1?
It's a reasonable point, but doesn't destroy the model. There's two ways
you could play this:
- Say that you have to allocate custom fields by hand for each new
product, because there's no way Bugzilla can know which one you want
- Have the product selection UI phrased as "Restrict to products:" and
differentiate between the cases where the admin selects all N (which
would restrict the field to just those N unless changed manually) and
where the admin selects none at all (which would mean the field was
auto-added to each new product.) This would require a "global" boolean
in the database; but it would only be looked at when doing admin - the
implementation would still be common.
> What concerns me is the spectre of a set of N products on the one side,
> a set of M custom fields on the other (N and M both being large), and
> some arbitrarily complicated set of has-a relationships between them.
You make it sound complex, but it's not. On every "edit custom field"
screen, you have a "Restrict to products:" multiselect. And that's all
you need.
> OK, I can see the utility in this. I would ask, though, that the
> administrator not be required to compose from scratch, for every field,
> a name which isn't relevant to the user interface.
Again, you make it sound complicated. I suppose it depends on whether we
define the display names in the templates (which I think we should, but
I'm open to persuasion) but the UI could be something like this
short name (lower-case alphanumeric and underscore): [ ]
display name: [ ]
> The admin interface
> could, for example, propose a reasonable default by downcasing the
> display name and replacing all nonalphanumerics with underscores, and
> twiddling the result to avoid name collision. The administrator could
> then accept this suggestion, modify it, or nuke it and make up a new one.
Hmm. We could do that. If it were me, I'd like to pick my own, but I can
see the value in Bugzilla making a suggestion.
>>- The separation of content from presentation by moving the definition
>>of how and where the fields are displayed to the templates.
>
> I think it should be possible to modify the presentation of custom fields in
> this way, but I'd rather provide reasonable default behavior that obviates
> the need to perform template-twiddling for each and every custom field.
Oh, I agree that we should display them without intervention - note that
I said "how and where", not "if" :-) In other words, there should be a
default location, and changing it requires hacking templates, plus a
default UI widget, and changing that requires hacking templates.
So your suggestion of how to do it sounds roughly right. :-)
Gerv
More information about the developers
mailing list