37

基本的にこれをすばやく簡単にするために、django テンプレートで XOR 条件を実行しようとしています。コードでそれを実行しない理由を尋ねる前に、これはオプションではありません。

基本的に、ユーザーが 2 つの多対多オブジェクトのいずれかに属しているかどうかを確認する必要があります。

req.accepted.all 

req.declined.all

現在、それらはどちらか一方にしか存在できません(したがって、XOR条件付き)。ドキュメントを見回すと、私が理解できる唯一のことは次のとおりです

{% if user.username in req.accepted.all or req.declined.all %}

ここで私が抱えている問題は、user.username が実際に req.accepted.all にある場合は条件をエスケープしますが、req.declined.all にある場合は条件節に従います。

ここで何か不足していますか?

4

2 に答える 2

13

受け入れられたものからの言い換えられた答え:

取得するため:

{% if A xor B %}

行う:

{% if A and not B or B and not A %}

できます!

于 2016-12-31T14:27:05.843 に答える