2013-05-10 51 views
-4

我正在開發類似http://stackoverflow.com的項目。所以,就像問題和答案一樣。我試圖找到「正確答案」的實現。我正在使用Django。
這裏是「答案」的模式:
「正確答案」的控制符

class Answer(models.Model): 
    question = models.ForeignKey(Question) 
    content = models.TextField() 
    author = models.ForeignKey(User) 
    date = models.DateTimeField(db_index=True, default=datetime.now()) 
    is_right = models.BooleanField(default=False) 
    ratio = models.IntegerField(db_index=True, default=0) 

我感興趣的控制器來定義「正確答案」和「HTML頁面上的」實現。

+0

你會如何回答標記爲正確的? – 2013-05-10 13:35:49

+3

我不知道你在問什麼。什麼是「定義正確答案的控制器」?它應該做什麼?正確的答案在您的模型中定義。 – 2013-05-10 13:36:43

+0

如果你有一對一(一對多)的關係,你不應該將它定義爲多方(回答)中的一個屬性,而應該將其定義爲一個屬性(問題)。在你的例子中完全有可能有多個is_right答案。 – gertvdijk 2013-05-10 14:45:53

回答

0

控制器標記一個正確的答案可以很簡單的

def mark_right(answer_id): 
    try: 
    answer = Answer.objects.get(pk=answer_id) 
    except Answer.DoesNotExist: 
    raise Http404 
    answer.is_right = True 
    answer.save() 

此外,askbot是一個全功能的計算器克隆,寫在Django https://github.com/ASKBOT/askbot-devel

+0

謝謝,@ dm03514 您的鏈接非常有用 – Alexei 2013-05-10 15:19:50