您好即时通讯新Django和IM开发存储软件,从连锁店每个店铺都有自己的客户和付款。 所以会有一个特定的商店的员工角色(不需要了解其他门店),并有将是商店的管理员(谁是不是系统管理员的作用,只不过是另一种高层次的员工的角色),需要了解每家商店的支付。
该模型是这样的:
class Store(models.Model):
id = models.IntegerField(max_length=10, primary_key=True, default=0)
name = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Clients(models.Model):
store = models.ForeignKey(Store)
id = models.IntegerField(max_length=10, primary_key=True, default=0)
name = models.CharField(max_length=20)
last_name = models.CharField(max_length=20)
def __unicode__(self):
return self.last_name
class Payments(models.Model):
client = models.ForeignKey(Clients)
month_from = models.DateField(default='1111-01-01')
amount = models.IntegerField(default='0')
def __unicode__(self):
return self.month_from.strftime('%Y-%m-%d')
这是在客户端视图:
@login_required(login_url='/')
def clients(request):
query_string = ''
found_entries = None
if ('q' in request.GET) and request.GET['q'].strip():
query_string = request.GET['q']
entry_query = get_query(query_string, ['id', 'name',])
print entry_query
found_entries = Clients.objects.filter(entry_query).order_by('id')
print found_entries
else:
found_entries = Clients.objects.all()
return render_to_response('clients.html', { 'query_string': query_string, 'found_entries': found_entries }, context_instance=RequestContext(request))
而在HTML我像这样显示的客户端列表:
{% if found_entries %}
{% for Clients in found_entries %}
{{ Clients.name }} {{ Clients.last_name }}
{% endfor %}
{% endif %}
例如雇员的形式储存1并不需要了解店内3的客户端,但需要知道客户从库1,管理员需要了解从每家商店每一位客户。
这是这样做的最佳方式? 我一直在寻找有关Django的守护者,但不知道如果我可以工作了这一点与组权限一个简单的方法。
此外,我认为让每个商店的应用程序从个人和创建所有相应的商店通过Web服务使用tastypie一个导入数据的第二应用程序,这种方式是清洁规模。