o
    6k~i                     @   sP   d dl mZ d dlmZ d dlmZmZ G dd dejZ	G dd dejZ
dS )	    )models)gettext_lazy)MinValueValidatorMaxValueValidatorc                       s*  e Zd ZdZejdejdeddZejdejdeddZ	ej
eded	ged
dZejeddZejededdZej
deddZejdeddZejdeddZejddeddZejddeddZejddZejddZG dd dZdd Z fd d!Z fd"d#Z  Z S )$ReviewzReview Modelzplaces.PlacereviewsPlace	on_deleterelated_nameverbose_nameaccounts.UserUser      Rating)
validatorsr   Comment)r   TImages)defaultblankr   r   zHelpful Count)r   r   FzIs Verifiedz	Is ActivezPlace Response)r   nullr   zPlace Response Atauto_now_add)auto_nowc                   @   s^   e Zd ZedZedZdgZddgZej	dgdej	dgdej	dgdej	dgdgZ
d	S )
zReview.Metar   Reviewsz-created_atplaceuser)fieldsrating	is_activeN)__name__
__module____qualname___r   verbose_name_pluralorderingunique_togetherr   Indexindexes r*   r*   3/var/www/newdalilibackend/backend/reviews/models.pyMeta"   s    r,   c                 C   s    | j j d| jj d| j dS )N - z stars)r   usernamer   namer   selfr*   r*   r+   __str__.   s    zReview.__str__c                    sB   | j d u }t j|i | |sd|dg v r| j  d S d S )Nr   update_fields)pksupersavegetr   update_rating)r1   argskwargsis_new	__class__r*   r+   r6   1   s
   
zReview.savec                    s$   | j }t j|i | |  d S )N)r   r5   deleter8   )r1   r9   r:   r   r<   r*   r+   r>   8   s   zReview.delete)!r!   r"   r#   __doc__r   
ForeignKeyCASCADEr$   r   r   IntegerFieldr   r   r   	TextFieldcomment	JSONFieldlistimageshelpful_countBooleanFieldis_verifiedr    place_responseDateTimeFieldplace_response_at
created_at
updated_atr,   r2   r6   r>   __classcell__r*   r*   r<   r+   r      s>    r   c                   @   sb   e Zd ZdZejeejdeddZ	ejdejdeddZ
ejddZG d	d
 d
Zdd ZdS )ReviewHelpfulz9Review Helpful - Track which users found a review helpfulhelpful_votesr   r	   r   r   Tr   c                   @   s$   e Zd ZedZedZddgZdS )zReviewHelpful.MetazReview HelpfulzReview Helpful Votesreviewr   N)r!   r"   r#   r$   r   r%   r'   r*   r*   r*   r+   r,   O   s    r,   c                 C   s   | j j d| j S )Nr-   )r   r.   rS   r0   r*   r*   r+   r2   T   s   zReviewHelpful.__str__N)r!   r"   r#   r?   r   r@   r   rA   r$   rS   r   rL   rN   r,   r2   r*   r*   r*   r+   rQ   ?   s"    rQ   N)	django.dbr   django.utils.translationr   r$   django.core.validatorsr   r   Modelr   rQ   r*   r*   r*   r+   <module>   s
    9