Django inlines working on Dev server, yet not on Apache Test server?
Question: I'm having an issue where the Inline Admin functionality is behaving
differently in different environments.

In Dev, when editing a technology I get a link at the bottom to add more Roll
Modifiers as needed that works flawlessly.

In Test, I get a single roll modifier with no link to add more and it silently
fails to save any changes I make to the roll modifier.

The same code is deployed to both environments. Any ideas what might be going
on here?

## Dev Server Configuration (actually a Desktop)

  * Gentoo Linux
  * Django 1.3
  * SQLLite3 Database (locally stored)
  * Django built-in development server
  * Python 2.6.6

## Test Server Configuration

  * SuSE Linux 11.4
  * Django 1.3 (also tried with Django 1.2.5)
  * PostgreSQL 9.0.3
  * Apache2 2.2.17
  * Python 2.7

## Appendix A - Model Code

    
    
    class Technology(models.Model):
      categories = (
         ('weap' , 'Weaponry'),
         ('equip', 'Equipment'),
         ('cons' , 'Construction'),
         ('ammo' , 'Ammunition'),
       )
    
      name = models.CharField(max_length=40)
      category = models.CharField(max_length=8, choices=categories)
      urlname = models.CharField(max_length=20)
      description = models.TextField()
      base_difficulty = models.IntegerField()
      tier = models.IntegerField()
      show = models.BooleanField()
    
      def __unicode__(self):
        return self.name
    
    class TechnologyRollModifier(models.Model):
      technology = models.ForeignKey(Technology)
      modifier   = models.IntegerField(default=2)
      condition  = models.CharField(max_length=120)
    

## Appendix B - Admin Code

    
    
    from django.contrib import admin
    from solaris.warbook import models
    
    class TechnologyRollModifierInline(admin.StackedInline):
      model = models.TechnologyRollModifier
      extra = 0
    
    class TechnologyAdmin(admin.ModelAdmin):
      fields = ['name', 'urlname', 'description', 'tier', 'category', 'base_difficulty', 'show']
      inlines = [TechnologyRollModifierInline,]
    
    admin.site.register(models.Technology, TechnologyAdmin)
    


Answer: Figured it out. Some time ago I'd copied the Django admin files to
/var/www/media/admin and aliases /media/ to /var/www/media/

Which means it was serving up the old media files - giving me working CSS /
images but silently failing to find the JavaScript - which the StackedInline
admin interface relies upon to do its work.

The single TechnologyRollModifier I saw was meant to be the hidden template
and did not actually record any data meant to be entered into it.

Another mystery solved....

