小编Jay*_*yyy的帖子

如何过滤django中多对多字段的多个值的模型结果

我有以下型号:

class Group(models.Model):
    member = models.ManyToManyField(Player, through='GroupMember')
    name = models.CharField(max_length=20, unique=True)
    join_password = models.CharField(max_length=20)
    date_created = datetime.datetime.now()

    def __unicode__(self):
        return str(self.name)

class GroupMember(models.Model):
    member = models.ForeignKey(Player)
    group = models.ForeignKey(Group)
    rating = models.IntegerField(default=1500)
    played = models.IntegerField(default=0)
    wins = models.IntegerField(default=0)
    losses = models.IntegerField(default=0)
    experience = models.IntegerField(default=0)
    admin = models.BooleanField(default=0)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,该组由成员组成.我想做的是给两个玩家我希望能够过滤包含这两个玩家的组,但我不确定如何进行这种类型的查询.

python django

29
推荐指数
3
解决办法
4万
查看次数

Android向django服务器csrf发送post请求失败

我希望我的Android应用程序能够将一些信息发送到我的django服务器.所以我让android应用程序发送一个帖子请求到mysite/upload页面,django的视图这个页面将根据帖子数据做工作.问题是服务器为post请求提出的响应抱怨csrf验证失败.看看问题,似乎我可能必须首先从服务器获取一个csrf令牌,然后使用该令牌执行帖子但是我不确定我是如何做到的.编辑:我发现我可以使用视图装饰器@csrf_exempt来解决此视图的crsf验证,但我不确定这是否是最佳解决方案.我的android代码:

// Create a new HttpClient and Post Header
                    HttpClient httpclient = new DefaultHttpClient();
                    HttpPost httppost = new HttpPost(URL);

                    // Add your data
                    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                    nameValuePairs.add(new BasicNameValuePair("scoreone", scoreone));
                    nameValuePairs.add(new BasicNameValuePair("scoretwo", scoretwo));
                    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                    System.out.println("huzahhhhhhh");
                    // Execute HTTP Post Request
                    HttpResponse response = httpclient.execute(httppost);
                    BufferedReader in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
                    StringBuffer sb = new StringBuffer("");
                    String line = "";
                    String NL = System.getProperty("line.separator");
                    while ((line = in.readLine()) != null) {
                        sb.append(line + NL);
                    }
                    in.close();
                    String result = …
Run Code Online (Sandbox Code Playgroud)

django post android request

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

django ×2

android ×1

post ×1

python ×1

request ×1