def create_tags(tag_list): from app.models import Tag result = False print('----------',tag_list) for tag in tag_list: t = Tag(name=tag) db.session.add(t) try: db.session.commit() result = True except Exception: db.session.rollback() return result
def test_user_is_deleted(self): u = User('*****@*****.**') tags = [ Tag(tagname="Test Tag 1"), Tag(tagname="Test Tag 2"), Tag(tagname='Test Tag 3') ] ques = Question(body='test Question', user=u, tags=tags) db.session.add(ques) db.session.commit() db.session.delete(u) db.session.commit() u = User.query.all() self.assertFalse(u) # User should be deleted q = Question.query.all() self.assertTrue(q) # But the question shouldn't
def fake_tags(count=10): records = Record.query.all() while True: try: for _ in range(count): tag = Tag(name=fake.word()) tag.records = random.sample(records, k=random.randint(0, len(records))) db.session.add(tag) db.session.commit() break except IntegrityError: db.session.rollback() continue
def add_tag(self, tag_title, page_id): page = self.page(page_id=page_id) if tag_title in list(tag.title for tag in page.tags.all()): return None tag = None try: tag = Tag.objects.get(title=tag_title) except: tag = Tag(title=tag_title) tag.save() if page is not None and tag is not None: page.tags.add(tag) return tag return tag
def tag_add(): form = TagForm() if form.validate_on_submit(): data = form.data tag_count = Tag.query.filter_by(name=data["name"]).count() if tag_count == 1: flash("操作失败:标签已存在!", "err") return redirect(url_for("admin.tag_add")) tag = Tag(name=data["name"]) db.session.add(tag) db.session.commit() flash("操作成功!", "ok") return redirect(url_for("admin.tag_list", page=1)) # 跳转到标签列表(必须指定page) return render_template("admin/tag_add.html", form=form)
def add_tags(tags): # list_t = [] # for i in tags: # # if exist # t = Tag.query.filter_by(tag_name=i).first() # if not t: # t = Tag(tag_name=i) # a new tag # db.session.add(t) # list_t.append(t) list_t = [(Tag.query.filter_by(tag_name=i).first() or Tag(tag_name=i)) for i in tags] g.user.tags = list_t # db.session.bulk_save_objects(list_t) db.session.commit()
def tag_add(): form = TagForm() if form.validate_on_submit(): data = form.data tag = Tag.query.filter_by(name=data['name']).count() if tag == 1: flash("标签已经存在!", "err") return redirect(url_for("admin.tag_add")) tag = Tag(name=data['name']) db.session.add(tag) db.session.commit() flash("标签添加成功", "ok") redirect(url_for("admin.tag_add")) return render_template("admin/tag_add.html", form=form)
def new_tag(): tagForm = TagForm() if tagForm.validate_on_submit(): tag = Tag(value=tagForm.value.data.upper()) try: db.session.add(tag) db.session.commit() flash(f'Tag has been created!!', category='success') return redirect(url_for('posts.new_post')) except: flash(f'Tag Already Exists', category='warning') return redirect(url_for('posts.new_post')) flash(f'Could not create tag. Something went wrong.', category='error') return redirect(url_for('posts.new_post'))
def new_a_tag(): post_hash_id = request.json.get('post_id', False) name = request.json.get('name', False) tags = Tag.query.filter_by(name=name).filter_by( user_id=current_user.id).limit(1).all() if not tags: tag = Tag(name, user_id=current_user.id) else: tag = tags[0] post = Post.get_or_404(post_hash_id) if tag not in post.tags: post.tags.append(tag) db.session.commit() return jsonify({'id': tag.hash_id, 'name': tag.name})
def tag_add(): form = TagForm() if form.validate_on_submit(): name = form.name.data tag = Tag.query.filter_by(name=name).count() if tag == 0: db.session.add(Tag(name=name)) db.session.commit() flash("标签添加成功", category='ok') return redirect(url_for('admin.tag_add')) flash("该标签已经存在", category='err') return redirect(url_for("admin.tag_add")) return render_template('admin/tag_add.html', form=form)
def tag_add(): form = forms.TagForm() if form.validate_on_submit(): # post提交且有值 data = form.data # 获取提交的数据 tag = Tag.query.filter_by(name=data['name']).count() if tag == 1: flash('标签已经存在!', "err") return redirect(url_for('admin.tag_add')) tag = Tag(name=data["name"]) db.session.add(tag) db.session.commit() flash("添加成功", "ok") redirect(url_for('admin.tag_add')) return render_template('admin/tag_add.html', form=form)
def tag_add(): form = TagForm() if form.validate_on_submit(): data = form.data tag = Tag.query.filter_by(name=data['name']).count() if tag == 1: flash('操作失败', 'err') return redirect(url_for('admin.tag_add')) tag = Tag(name=data['name']) db.session.add(tag) db.session.commit() flash('操作成功', 'ok') return redirect(url_for('admin.tag_add')) return render_template('admin/tag_add.html', form=form)
def addtag(): form = TagForm() if form.validate_on_submit(): data = form.data tag = Tag.query.filter_by(name=data["name"]).count() if tag == 1: flash("标签已存在!", "err") return redirect(url_for("admin.addtag")) t = Tag(name=data["name"]) db.session.add(t) db.session.commit() flash("添加标签成功!", "ok") return redirect(url_for("admin.addtag")) return render_template("admin/addtag.html", form=form)
def post(self) -> dict: parser = reqparse.RequestParser() parser.add_argument("name", type=str, required=True, help="No name provided") parser.add_argument("description", type=str) args = parser.parse_args() tag = Tag(name=args["name"], description=args["description"]) db.session.add(tag) db.session.commit() return NestedResponse(schema=TagSchema).dump(tag)
def get_tags_by_names(tag_names: List[str]) -> List[Tag]: """ Возвращает список тэгов по списку названий тэгов :param tag_names: Список названий тэгов :return: Список тэгов """ if not tag_names: return [] # Поиск существующих тэгов и создание новых в случае отсутствия существующих tags = db.session.query(Tag).filter(Tag.name.in_(tag_names)).all() for tag_name in set(tag_names) - set(tag.name for tag in tags): tags.append(Tag(name=tag_name)) return tags
def tag_add(): form = TagForm() if form.validate_on_submit(): tag_data = form.data tag = Tag.query.filter_by(name=tag_data["tag_name"]).first() if tag: flash("标签已存在,请不要重复添加", "err") return redirect(url_for("admin.tag_add")) tags = Tag(name=tag_data["tag_name"]) db.session.add(tags) flash("添加成功", "ok") db.session.commit() return redirect(url_for("admin.tag_add")) return render_template("hdmin/tag_add.html", form=form)
def publish(self, company): job = Job() self.populate_obj(job) job.job_company = company.id tags = self.tags.data.split(',') for tag_name in tags: tag = Tag.query.filter_by(tag_name=tag_name).first() if tag == None: tag = Tag() tag.tag_name = tag_name job.job_tag.append(tag) db.session.add(job) db.session.commit() return job
def tag_add(): tagForm = TagForm() if tagForm.validate_on_submit(): data = tagForm.name.data tag = Tag.query.filter_by(name=data).count() if tag == 1: flash('标签名称已存在!', 'err') return redirect(url_for('admin_blueprint.tag_add')) tag = Tag(name=data) db.session.add(tag) db.session.commit() flash('添加标签成功', 'success') return render_template('admin/tag_add.html', tagForm=tagForm)
def tag_add(): form = TagForm() if form.validate_on_submit(): data = form.data tag = Tag.query.filter_by(name=data["name"]).count() #不可以有重复标签 if tag == 1: flash(u"标签已存在!", 'err') return redirect(url_for('admin.tag_add')) tag = Tag(name=data["name"]) db.session.add(tag) #添加数据 db.session.commit() #提交数据 flash(u"添加标签成功!", "OK") redirect(url_for('admin.tag_add')) return render_template("admin/tag_add.html", form=form)
def idea(session) -> Idea: new_tag: Tag = Tag(title="raincoat") session.add(new_tag) new_idea: Idea = Idea(email="*****@*****.**", code=str(uuid.uuid4()).upper().replace("-", "")[:10], title="raincoat", tag=[new_tag], body="I have an idea about raincoat") session.add(new_idea) session.commit() return new_idea
def manage_tags(): form = TagForm() if form.validate_on_submit(): new_tag = Tag(tagname=form.tagname.data.lower()) current_user.tags.append(new_tag) db.session.commit() flash('New tag was added.', 'success') return redirect(url_for('settings.manage_tags')) return render_template('settings/tags.html', title='Expense Tags', form=form)
def add_temp(paper, tags, filenames, db, s3): if tags is not None: delimiters = ",", ";" regexPattern = '|'.join(map(re.escape, delimiters)) ## Stripping whitespaces and making unique list tags = [s.lower().strip() for s in re.split(regexPattern, tags)] tags = [s for s in tags if (s is not '' and s is not None)] tags = list(set(tags)) print(tags) for tag in tags: tag_obj = db.session.query(Tag).filter(Tag.tagname == tag).first() if tag_obj is None: tag_obj = Tag(tagname=tag) paper.tags.append(tag_obj) db.session.add(paper) db.session.flush() if filenames is not None: new_filenames = [] fileurls = [] for filename in filenames.split(","): filename = secure_filename(filename) new_filenames.append(filename) new_filename = '{}/{}'.format( paper.id, filename) # updating the name with paper.id for easy access s3_url = "{0}/{1}/{2}".format(app.config['S3_ENDPOINT'], app.config['S3_BUCKET'], new_filename) s3.upload_file('{}/{}'.format(REPO_FOLDER, filename), app.config['S3_BUCKET'], new_filename) fileurls.append(s3_url) print(new_filenames) print(s3_url) for filename, fileurl in zip(new_filenames, fileurls): paper.files.append( File(filename=filename, filetype='Other', fileurl=fileurl)) db.session.flush() db.session.commit()
def create_tag(): """批量添加标签""" import pandas df = pandas.read_csv('movie.csv', names=[ 'name', 'logo', 'actors', 'release_time', 'detail_url', 'tag', 'area', 'length', 'info' ]) tags = df['tag'].unique() for tag in tags: if not Tag.query.filter_by(name=tag).first(): tag = Tag(name=tag) db.session.add(tag) db.session.commit() print("添加标签%s成功" % (tag))
def create(self, validated_data): instance = super(ArticleSerializer, self).create(validated_data) text = validated_data.get('body_text', instance.body_text) tag_names = jieba.analyse.extract_tags(text, topK=3) article = Article.objects.filter(pk=instance.id).first() for tag_name in tag_names: tag = Tag.objects.filter(name=tag_name).first() if not tag: tag = Tag(name=tag_name) tag.save() tag.articles.add(article) tag.save() instance.tags.add(tag_name) instance.save() return instance
def create_tag(subject_id, originator_id, text, publicity="public"): tag = Tag() tag.originator = originator_id tag.originator_slug = Person.query.filter( Person.id == originator_id)[0].slug tag.subject = subject_id tag.subject_slug = Person.query.filter(Person.id == subject_id)[0].slug tag.text = text label = create_label_from_tag(tag) db.session.add(label) tag.label = label.id tag.publicity = publicity tag.slug = tag.create_slug() return tag
def setUp(self): self.app = create_app('test') self.app_context = self.app.app_context() self.app_context.push() db.create_all() cate1 = Category(name='cate1') db.session.add(cate1) db.session.commit() cate2 = Category(name='cate2') cate2.parent = cate1 db.session.add(cate2) db.session.commit() cate3 = Category(name='cate3') cate3.parent = cate2 db.session.add(cate3) db.session.commit() tag1 = Tag(name='tag1') tag2 = Tag(name='tag2') tag3 = Tag(name='tag3') db.session.add_all([tag1, tag2, tag3]) db.session.commit()
def tag_add(): tag_form = TagForm() if tag_form.validate_on_submit(): data = tag_form.data tag = Tag.query.filter_by(name=data['name']).count() if tag == 1: flash('标签已经存在!', 'error') return redirect(url_for('admin.tag_add')) else: tag_obj = Tag(name=data['name']) db.session.add(tag_obj) db.session.commit() flash('标签添加成功!', 'success') return redirect(url_for('admin.tag_list', page=1)) return render_template('admin/tag_add.html', tag_form=tag_form)
def create_users_movies_and_tags(): # create three users monkey = User(name="monkey") monkey.set_password("monkeypassword") monkey.get_token() bella = User(name="bella") bella.set_password("bellapassword") bella.get_token() hazel = User(name="hazel") hazel.set_password("hazelpassword") hazel.get_token() # each user creates one movie movie_1 = Movie(slug="movie12019", title="Movie 1", year=2019, recommender_id=1) movie_2 = Movie(slug="movie22019", title="Movie 2", year=2019, recommender_id=2) movie_3 = Movie(slug="movie32019", title="Movie 3", year=2019, recommender_id=3) # create three tags action = Tag(name="Action") comedy = Tag(name="Comedy") documentary = Tag(name="Documentarty") db.session.add_all( [monkey, bella, hazel, movie_1, movie_2, movie_3, action, comedy, documentary] ) db.session.commit() return ( monkey, bella, hazel, movie_1, movie_2, movie_3, action, comedy, documentary, )
def tag_add(): form = TagForm() if form.validate_on_submit(): data = form.data tag = Tag.query.filter_by(name=data["name"]).count() if tag == 1: flash("名称已经存在!", "err") return redirect(url_for("admin.tag_add")) tag = Tag(name=data["name"]) db.session.add(tag) db.session.commit() flash("添加标签成功!", "ok") redirect(url_for("admin.tag_add")) print(form.name.errors) return render_template("admin/tag_add.html", form=form)
def seed_tags(): url = "https://api.rawg.io/api/genres" headers = { 'key': os.environ.get('RAPIDAPI_KEY').strip(), } response = requests.request("GET", url, params=headers) json_data = json.loads(response.text) for res in json_data['results']: tag = Tag(name=res['name']) db.session.add(tag) db.session.commit()