当前位置: 首页>>代码示例>>Python>>正文


Python Project.remove_member方法代码示例

本文整理汇总了Python中models.Project.remove_member方法的典型用法代码示例。如果您正苦于以下问题:Python Project.remove_member方法的具体用法?Python Project.remove_member怎么用?Python Project.remove_member使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在models.Project的用法示例。


在下文中一共展示了Project.remove_member方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: add_or_edit_project

# 需要导入模块: from models import Project [as 别名]
# 或者: from models.Project import remove_member [as 别名]
def add_or_edit_project(request, project_author=None, project_pk=None, is_add=False):
    user = request.user

    project = None
    if not is_add:
        project = get_object_or_404(Project, pk=project_pk)

        if project.wont_be_completed:
            return oops("This project is set as 'won't be completed': you can't edit it")

            # only a project's author can edit it
        if not user == project.author:
            return oops("Only a project's author can edit it.")

    if request.method == "POST":
        if is_add:
            project = Project(proposed_by=user, author=user)
        elif project.author != user:
            return oops("Only a project's author can edit it.")

        form = ProjectForm(request.POST)
        if form.is_valid():
            project.title = form.cleaned_data["title"]
            # if form.cleaned_data['event']:
            # 	project.event = get_object_or_404(Event, pk=form.cleaned_data['event'])
            project.description_markdown = form.cleaned_data["description"]
            if form.cleaned_data["time_estimate"]:
                project.hour_estimate = form.cleaned_data["time_estimate"]
            if project.p_completed:
                project.showcase_markdown = form.cleaned_data["showcase"]

            if not project.p_completed:
                not_involved = form.cleaned_data["not_involved"]
                if not_involved:
                    project.looking_for_admin = True
                    if not is_add:
                        user.message_set.create(
                            message="The project is now set as 'looking for admin'. You have admin rights until someone else clicks 'Become admin for this project'."
                        )
                        project.remove_member(user)
                else:
                    project.looking_for_admin = False

            tags = form.cleaned_data["tags"]

            project.save()

            # Need to save() before calling this, so we couldn't do it up there
            if is_add and not not_involved:
                project.join_user(user)

            project.set_tags(tags)

            return HttpResponseRedirect(project.get_absolute_url())
    elif not is_add:
        # initialize the form with existing project info
        form = ProjectForm(
            initial={
                "title": project.title,
                "description": project.description_markdown,
                "showcase": project.showcase_markdown,
                "tags": project.get_editable_tags,
                "time_estimate": project.hour_estimate,
            }
        )
    else:
        form = ProjectForm()

    return render_to_response(
        "projects/add_or_edit_project.html",
        {"form": form, "is_editing": not is_add, "project": project},
        context_instance=RequestContext(request),
    )
开发者ID:clusterify,项目名称:clusterify,代码行数:75,代码来源:views.py


注:本文中的models.Project.remove_member方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。