アプリのテンプレート駆動型の期限切れ試用版を作成しようとしていますが、現在の方法が機能しない理由がわかりません。
ユーザーがサインアップすると、「無料試用版」という名前のプランで新しい顧客と current_subscription を作成します。
@receiver(user_signed_up)
def create_trial(sender, **kwargs):
user = kwargs['user']
customer = Customer.create(user)
fn = settings.TRIAL_PERIOD_FOR_USER_CALLBACK
days = fn(user)
start = datetime.now()
end = start + timedelta(days=days)
sub = CurrentSubscription.objects.create(customer=customer,
plan="free trial",
quantity="1",
status='trialing',
trial_start=start,
trial_end=end,
start=start,
current_period_end=end,
amount=0)
次に、アプリの代わりに試用期間が終了したことをユーザーに知らせるメニューを表示するユーザーの計画を対象とする条件付きテンプレート タグがあります。
{% if not current_subscription.plan == 'free trial' or current_subscription.is_valid %}
# trial expiry stuff
{% endif %}
しかし、トライアルの有効期限が切れていて、プランの値が != 'free trial' である場合でも、私の条件は正しく評価されません。私のタグは間違っていますか?ありがとう