def update(self, statement):
        """
        Update the provided statement.
        """
        Statement = self.get_model('statement')
        Tag = self.get_model('tag')

        if hasattr(statement, 'id'):
            statement.save()
        else:
            statement = Statement.objects.create(
                text=statement.text,
                search_text=self.tagger.get_bigram_pair_string(statement.text),
                conversation=statement.conversation,
                in_response_to=statement.in_response_to,
                search_in_response_to=self.tagger.get_bigram_pair_string(statement.in_response_to),
                created_at=statement.created_at
            )

        for _tag in statement.tags.all():
            tag, _ = Tag.objects.get_or_create(name=_tag)

            statement.tags.add(tag)

        return statement
def update ( self , statement ) : Statement = self . get_model ( 'statement' ) Tag = self . get_model ( 'tag' ) if hasattr ( statement , 'id' ) : statement . save ( ) else : statement = Statement . objects . create ( text = statement . text , search_text = self . tagger . get_bigram_pair_string ( statement . text ) , conversation = statement . conversation , in_response_to = statement . in_response_to , search_in_response_to = self . tagger . get_bigram_pair_string ( statement . in_response_to ) , created_at = statement . created_at ) for _tag in statement . tags . all ( ) : tag , _ = Tag . objects . get_or_create ( name = _tag ) statement . tags . add ( tag ) return statement
Update the provided statement.