擅长:python、mysql、java
<p>关于第二个问题:一种可能的(简单的)方法是通过ajax调用,因为您说您使用的是javascript。你知道吗</p>
<p>它应该指向一个url,该url本身指向一个视图,该视图将处理您在请求中发送的数据。类似于(假设您使用的是POST请求):</p>
<pre><code>def add(request):
if not request.is_ajax():
raise ...
excercise, amount = request.POST['excercise'], request.POST['amount']
user = request.user
# a model method that'll add to whatever activity
# the user did and update the "week one complete" field
user.did_activity(excercise, amount)
if user.weekOne.weekOneComplete:
return HttpResponse(json.dumps(some_return_data), mimetype="application/json")
return HttpResponse(json.dumps(other_return_data), mimetype="application/json")
</code></pre>
<p>这更像是伪代码的一部分,所以你明白了。您仍然需要在JS端编写ajax调用,这个模型方法将添加到正确的练习和验证基准测试中,并将用户保存到数据库中。例如:</p>
<pre><code>def did_activity(self, excercise, amount):
if excercise == 'squats':
self.weekOne.squats += amount
...
if self.hit_benchmark():
self.weekOne.weekOneComplete = True
self.save()
</code></pre>
<p>此外,本例假设用户已通过身份验证。你知道吗</p>
<p>祝你好运。你知道吗</p>