Django

Code

Changeset 4331

Show
Ignore:
Timestamp:
01/15/07 18:27:04 (2 years ago)
Author:
adrian
Message:

newforms-admin: Moved list_display_links from AdminOptions? to ModelAdmin?.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/newforms-admin/django/contrib/admin/options.py

    r4330 r4331  
    3535 
    3636    list_display = ('__str__',) 
     37    list_display_links = () 
    3738    list_filter = () 
    3839 
     
    271272            raise PermissionDenied 
    272273        try: 
    273             cl = ChangeList(request, self.model, self.list_display, self.list_filter) 
     274            cl = ChangeList(request, self.model, self.list_display, self.list_display_links, self.list_filter) 
    274275        except IncorrectLookupParameters: 
    275276            # Wacky lookup parameters were given, so redirect to the main 
  • django/branches/newforms-admin/django/contrib/admin/templatetags/admin_list.py

    r4328 r4331  
    173173            result_repr = ' ' 
    174174        # If list_display_links not defined, add the link tag to the first field 
    175         if (first and not cl.lookup_opts.admin.list_display_links) or field_name in cl.lookup_opts.admin.list_display_links: 
     175        if (first and not cl.list_display_links) or field_name in cl.list_display_links: 
    176176            table_tag = {True:'th', False:'td'}[first] 
    177177            first = False 
  • django/branches/newforms-admin/django/contrib/admin/views/main.py

    r4330 r4331  
    293293 
    294294class ChangeList(object): 
    295     def __init__(self, request, model, list_display, list_filter): 
     295    def __init__(self, request, model, list_display, list_display_links, list_filter): 
    296296        self.model = model 
    297297        self.opts = model._meta 
     
    299299        self.manager = self.opts.admin.manager 
    300300        self.list_display = list_display 
     301        self.list_display_links = list_display_links 
    301302        self.list_filter = list_filter 
    302303 
  • django/branches/newforms-admin/django/core/management.py

    r4330 r4331  
    997997                                e.add(opts, '"admin.list_display" doesn\'t support ManyToManyFields (%r).' % fn) 
    998998                # list_display_links 
    999                 if opts.admin.list_display_links and not opts.admin.list_display: 
     999                if opts.ModelAdmin.list_display_links and not opts.ModelAdmin.list_display: 
    10001000                    e.add(opts, '"admin.list_display" must be defined for "admin.list_display_links" to be used.') 
    1001                 if not isinstance(opts.admin.list_display_links, (list, tuple)): 
     1001                if not isinstance(opts.ModelAdmin.list_display_links, (list, tuple)): 
    10021002                    e.add(opts, '"admin.list_display_links", if given, must be set to a list or tuple.') 
    10031003                else: 
    1004                     for fn in opts.admin.list_display_links: 
     1004                    for fn in opts.ModelAdmin.list_display_links: 
    10051005                        try: 
    10061006                            f = opts.get_field(fn) 
     
    10081008                            if not hasattr(cls, fn): 
    10091009                                e.add(opts, '"admin.list_display_links" refers to %r, which isn\'t an attribute, method or property.' % fn) 
    1010                         if fn not in opts.admin.list_display: 
     1010                        if fn not in opts.ModelAdmin.list_display: 
    10111011                            e.add(opts, '"admin.list_display_links" refers to %r, which is not defined in "admin.list_display".' % fn) 
    10121012                # list_filter 
  • django/branches/newforms-admin/django/db/models/base.py

    r4330 r4331  
    138138            cls._meta.ModelAdmin = type('ModelAdmin', (value, ModelAdmin), {}) 
    139139            # This AdminOptions stuff is legacy and will eventually be removed. 
    140             value = AdminOptions(**dict([(k, v) for k, v in value.__dict__.items() if not k.startswith('_') and k not in ('list_display', 'list_filter')])) 
     140            value = AdminOptions(**dict([(k, v) for k, v in value.__dict__.items() if not k.startswith('_') and k not in ('list_display', 'list_display_links', 'list_filter')])) 
    141141            value.contribute_to_class(cls, name) 
    142142        elif hasattr(value, 'contribute_to_class'): 
  • django/branches/newforms-admin/django/db/models/options.py

    r4330 r4331  
    200200 
    201201class AdminOptions(object): 
    202     def __init__(self, fields=None, js=None, list_display_links=None, 
     202    def __init__(self, fields=None, js=None, 
    203203        date_hierarchy=None, save_as=False, ordering=None, search_fields=None, 
    204204        save_on_top=False, list_select_related=False, manager=None, list_per_page=100): 
    205205        self.fields = fields 
    206206        self.js = js or [] 
    207         self.list_display_links = list_display_links or [] 
    208207        self.date_hierarchy = date_hierarchy 
    209208        self.save_as, self.ordering = save_as, ordering