Return the item from Item.git, and use Item.material, not Item.item.

This commit is contained in:
Trever Fischer
2012-11-17 16:02:58 -05:00
parent 452b5acbfd
commit f16c7df2d0
3 changed files with 19 additions and 4 deletions

View File

@@ -7,3 +7,4 @@ admin.site.register(models.MOTD)
admin.site.register(models.PlayerSession)
admin.site.register(models.MinecraftGroup)
admin.site.register(models.Ban)
admin.site.register(models.Item)

View File

@@ -0,0 +1,13 @@
from django.core.management.base import BaseCommand
from minecraft.items import ITEMS
from minecraft.models import Item
class Command(BaseCommand):
help = 'Import default items into the database'
def handle(self, *args, **options):
for i in ITEMS:
if i['durability'] == 0:
item,created = Item.objects.get_or_create(material=i['id'])
if created:
print "Imported", item

View File

@@ -13,9 +13,10 @@ class Item(models.Model):
damage = models.IntegerField(default=0)
data = models.IntegerField(default=0)
def get(self, material, damage=0, data=0):
return self.objects.get_or_create(material=material, damage=damage,
data=data)
@classmethod
def get(cls, material, damage=0, data=0):
return cls.objects.get_or_create(material=material, damage=damage,
data=data)[0]
def __unicode__(self):
return self.name()
@@ -33,7 +34,7 @@ class Item(models.Model):
@property
def metadata(self):
for i in ITEMS:
if i['id'] == self.item:
if i['id'] == self.material:
return i;
class MinecraftProfile(models.Model):