コード例 #1
0
ファイル: repository.py プロジェクト: booo/gid
    def post(self, username):
        form = RepositoryForm(request.form, csrf_enabled=False)
        reponame = self._sanitize(form.name.data)

        if not "private" in request.form or request.form["private"] == "False":
            form.private.data = False

        if form.validate():
            user = User.query.filter_by(username=session["identity.name"]).first()

            if user.username == username:
                repo = Repository(reponame, user)
                repo.owner = user
                repo.description = form.description.data
                repo.private = bool(form.private.data)
                repo.contributers = [user] + [
                    User.query.filter_by(username=c.strip()).first() for c in form.contributers.data.split(",")
                ]

                db.session.add(repo)
                db.session.commit()

                return jsonify(repo=repo.toDict())

        return jsonify({"error": form.errors})