Django работает на сервере Dev, но не на сервере Apache Test? - PullRequest
1 голос
/ 02 июля 2011

У меня проблема с тем, что функции Inline Admin ведут себя по-разному в разных средах.

В Dev, при редактировании технологии, я получаю ссылку внизу, чтобы добавить дополнительные модификаторы рулона по мере необходимости, которые работают без нареканий.

В тесте я получаю один модификатор рулона без ссылки, чтобы добавить больше, и он молча не может сохранить любые изменения, которые я делаю в модификатор рулона.

Один и тот же код развернут в обеих средах. Есть идеи, что здесь может происходить?

Конфигурация сервера Dev (фактически рабочий стол)

  • Gentoo Linux
  • Джанго 1,3
  • База данных SQLLite3 (хранится локально)
  • Встроенный сервер разработки Django
  • Python 2.6.6

Тестовая настройка сервера

  • SuSE Linux 11.4
  • Django 1.3 (также пробовал с Django 1.2.5)
  • PostgreSQL 9.0.3
  • Apache2 2.2.17
  • Python 2.7

Приложение A - Код модели

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)

Приложение B - Код администратора

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)

1 Ответ

0 голосов
/ 02 июля 2011

Разобрался.Некоторое время назад я скопировал административные файлы Django в / var / www / media / admin и aliases / media / to / var / www / media /

, что означает, что он обслуживал старые медиа-файлы -давая мне рабочий CSS / изображения, но молча не смог найти JavaScript - на который опирается административный интерфейс StackedInline.

Единственный TechnologyRollModifier, который я видел, должен был быть скрытым шаблоном и фактически не записывать какие-либо данные, предназначенные для его ввода.

Еще одна загадка раскрыта ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...