当前位置: 首页 > news >正文

网站营销方案设计公司福田网站建设seo信科

网站营销方案设计公司,福田网站建设seo信科,网络营销推广的要点,网站建立要多少钱接着上期代码框架#xff0c;开发第3个功能#xff0c;任务管理#xff0c;再增加一个学习任务表#xff0c;用来记录发布的学习任务的标题和内容#xff0c;预计完成天数#xff0c;奖励积分和任务状态等信息。 第一步#xff1a;编写第三个功能-任务管理 1#xff0…接着上期代码框架开发第3个功能任务管理再增加一个学习任务表用来记录发布的学习任务的标题和内容预计完成天数奖励积分和任务状态等信息。 第一步编写第三个功能-任务管理 1编辑模型文件 ./mysite/study_system/models.py: class StudyTask(models.Model):task_id models.AutoField(primary_keyTrue, verbose_name任务ID)task_type models.IntegerField(verbose_name任务类型)task_title models.CharField(max_length100, verbose_name任务标题)task_description models.TextField(verbose_name任务描述)reward_points models.IntegerField(verbose_name奖励积分)deadline_days models.IntegerField(verbose_name预计完成天数)actual_days models.IntegerField(verbose_name实际完成天数)task_status models.IntegerField(verbose_name任务状态)created_time models.DateTimeField(verbose_name创建时间)update_time models.DateTimeField(verbose_name更新时间)created_by models.ForeignKey(StudyUser, on_deletemodels.CASCADE, verbose_name创建者ID)class Meta:verbose_name 学习任务表verbose_name_plural 学习任务表# 用于模型的数据库表的名称db_table study_tasksdef __str__(self):return self.task_title 2编辑urls配置文件 ./mysite/study_system/urls.py # 任务管理url path(task/getUndoTaskList/, views.getUndoTaskList, namegetUndoTaskList), path(task/toNewTask/, views.toNewTask, nametoNewTask), path(task/addNewTask/, views.addNewTask, nameaddNewTask), 3编辑视图文件 ./mysite/study_system/views.py def getUndoTaskList(request):方法名称: 获取待完成任务列表作 者: PandaCode辉weixin公众号: PandaCode辉创建时间: 2023-10-10# 响应容器rsp_dict {}# 获取当前用户名username request.session.get(username)# 根据用户名获取用户对象cur_user StudyUser.objects.get(usernameusername)print(根据用户名查询用户对象: str(cur_user))user_list [cur_user]# 如果当前用户是3-学生则查找对应辅导员用户if cur_user.role 3:parent_id cur_user.parent_id# 根据用户ID获取用户对象parent_user StudyUser.objects.get(user_idparent_id)print(根据用户ID获取用户对象: str(parent_user))user_list [cur_user, parent_user]# 获取待完成任务列表data_list StudyTask.objects.filter(task_status0, created_by__inuser_list).order_by(-pk)# 查询待完成任务列表rsp_dict[data_list] data_listcontext_object_name undo_task_listtemplate_name study_system/home.html# html_file: xxx.html 动态指定模板页面 ; menuTo: task 任务管理 rsp_dict[html_file] study_system/task/undoTaskList.htmlrsp_dict[menuTask] menuTaskrsp_dict[context_object_name] context_object_namereturn render(request, template_name, rsp_dict)def toNewTask(request):方法名称: 跳转到发布新任务视图作 者: PandaCode辉weixin公众号: PandaCode辉创建时间: 2023-10-10rsp_dict {}rsp_dict[pageTitle] 新增任务# html_file: xxx.html 动态指定模板页面 ; menuTo: task 任务管理 rsp_dict[html_file] study_system/task/addTask.htmlrsp_dict[menuTask] menuTaskreturn render(request, study_system/home.html, rsp_dict)def addNewTask(request):方法名称: ajax请求, 表单视图发布新任务作 者: PandaCode辉weixin公众号: PandaCode辉创建时间: 2023-10-10# 初始化响应容器rsp_dict {result: error, errorMsg: 系统错误}# 是否ajax请求if request.is_ajax():try:rest request.POSTtask_title rest[taskTitle]task_type int(rest[taskType])task_description rest[taskDescription]reward_points int(rest[rewardPoints])deadline_days int(rest[deadlineDays])actual_days 0task_status 0# 获取当前用户名username request.session.get(username)# 根据用户名获取用户对象cur_user StudyUser.objects.get(usernameusername)print(根据用户名查询用户对象: str(cur_user))# 创建者ID使用 StudyUser 对象赋值created_by cur_user# 今天# UTC格式当前时区时间t time.localtime()work_date time.strftime(%Y-%m-%d %H:%M:%S, t)print(当前日期时间: str(work_date))# 创建对象并保存到数据库study_task StudyTask(task_titletask_title, task_typetask_type, task_descriptiontask_description,reward_pointsreward_points, deadline_daysdeadline_days, task_statustask_status,actual_daysactual_days, created_bycreated_by, created_timework_date,update_timework_date)# 保存到数据库是否成功study_task.save()rsp_dict[result] successexcept Exception as e:rsp_dict[errorMsg] 发布新任务保存到数据库失败.# 成功与否都返回json数据格式return JsonResponse(rsp_dict) 4编辑页面模板代码 4.1. 待完成任务列表页面 ./mysite/study_system/templates/study_system/task/undoTaskList.html {% if request.session.role 1 or request.session.role 2 or request.session.role 4 %}{# 【角色 1-系统管理员 】#}{# 【角色 2-辅导员 】#}{# 【角色 4-自导自学 】#}diva href/study_system/task/toNewTask/ classbtn btn-default btn-lg btn-block btn-a发布新任务/a/div {% endif %} !-- 结果显示区 -- div iddataList{% if data_list %}{% for studyTask in data_list %}ul classdataCardListli classbtn-group btn-group-justified{% if request.session.role 1 or request.session.role 2 or request.session.role 4 %}{# 【角色 1-系统管理员 】#}{# 【角色 2-辅导员 】#}{# 【角色 4-自导自学 】#}a href#classbtn btn-default btn-lg修改/aa href# classbtn btn-default btn-lg删除/a{% elif request.session.role 3 %}{# 【角色 3-学生用户 】#}a href# classbtn btn-default btn-lg删除/a{% endif %}/lili【任务ID {{ studyTask.task_id }}】/lili【任务发布者 {{ studyTask.created_by.username }}】/lili【发布时间 {{ studyTask.update_time|date:Y-m-d H:i:s }}】/lili【任务名称 {{ studyTask.task_title }}】/li{% if studyTask.task_type 1 %}li stylecolor: blue【任务类型 1-系统任务】/li{% elif studyTask.task_type 2 %}li【任务类型 2-辅导员任务】/li{% endif %}li【任务内容说明 {{ studyTask.task_description }}】/lili【计划完成天数 {{ studyTask.deadline_days }} 天】/lili stylecolor: red【成功奖励 {{ studyTask.reward_points }} 积分】/li{# 除法 : {% widthratio 5 100 1%}#}{# note:等同于(5 / 100) * 1,则结果返回0.05,和乘法一样使「参数3」 1就是除法了。#}{# 失败处罚积分为成功奖励积分的一半所以是 undoTask.7 / 2#}li stylecolor: green【失败处罚 -{% widthratio studyTask.reward_points 2 1 %} 积分】/li{% if request.session.role 1 or request.session.role 3 or request.session.role 4 %}{# 【角色 1-系统管理员 】#}{# 【角色 3-学生 】#}{# 【角色 4-自导自学 】#}lia href#classbtn btn-default btn-lg btn-block btn-a完成/a/li{% endif %}/ul{% endfor %}{% else %}strong查无记录/strong{% endif %} /div 4.2. 发布任务页面 ./mysite/study_system/templates/study_system/task/addTask.html script typetext/javascriptfunction addNewTask() {var taskTitle $(#taskTitle).val();var taskType $(#taskType).val();var taskDescription $(#taskDescription).val();var deadlineDays $(#deadlineDays).val();var rewardPoints $(#rewardPoints).val();// 1,获取csrfmiddlewaretoken的input标签value属性对应的值{#var token $([namecsrfmiddlewaretoken]).val();#}// 2,直接就能得到 csrfmiddlewaretoken 的input标签value属性的值var csrf_token {{ csrf_token }};$.post(/study_system/task/addNewTask/,{taskTitle: taskTitle,taskType: taskType,taskDescription: taskDescription,deadlineDays: deadlineDays,rewardPoints: rewardPoints,// 将token值放到请求数据部分,token的键必须是 csrfmiddlewaretokencsrfmiddlewaretoken: csrf_token,}, function (data) {if (success data.result) {alert(发布成功);window.location.href /study_system/task/getUndoTaskList;} else {alert(发布失败: data.errorMsg);}});} /script div classcontainerh1 classtext-center发布新任务/h1form action/study_system/task/addNewTask/ methodpost classform-horizontal roleform{% csrf_token %}{# 在Django中提交数据到后端服务的时候为了安全要使用CSRF跨站请求伪造。#}{# 跨站请求伪造的问题在于服务器信任来自客户端的数据。#}{# 常规的做法是在template模板HTML文件中的form表单 中添加 {% csrf_token %} 可以实现安全提交。#}{# 当我们使用from表单标签来发送请求时如果需要csrf_token认证那么必须将它写到我们的form表单标签里面里面的任意位置。#}{# 生成的隐藏标签为#}{# input typehidden namecsrfmiddlewaretoken valueWVHKQeAuMS4RGqyLybryIBAfacDa1Dp7PEaB3Badv3y0fvLqydX36xAVen6z3oS4#}div classform-grouplabel fortaskType classcol-sm-2 control-label任务类型/labeldiv classcol-sm-10select classform-control nametaskType idtaskType{% if request.session.role 1 %}option value1 selectedselected1-系统任务/option{% elif request.session.role 2 %}option value2 selectedselected2-辅导员任务/option{% endif %}/select/div/divdiv classform-grouplabel fortaskTitle classcol-sm-2 control-label任务名称/labeldiv classcol-sm-10input typetext classform-control nametaskTitle idtaskTitle maxlength12 size20 placeholder请输入任务名称/div/divdiv classform-grouplabel fortaskDescription classcol-sm-2 control-label任务内容说明/labeldiv classcol-sm-10textarea nametaskDescription idtaskDescription classform-control rows4/textarea/div/divdiv classform-grouplabel fordeadlineDays classcol-sm-2 control-label计划完成天数/labeldiv classcol-sm-10input typetext classform-control namedeadlineDays iddeadlineDays placeholder请输入计划完成天数/div/divdiv classform-grouplabel forrewardPoints classcol-sm-2 control-label任务奖励积分/labeldiv classcol-sm-10input typetext classform-control namerewardPoints idrewardPoints placeholder请输入任务奖励积分/div/divdiv classform-groupdiv classcol-sm-offset-2 col-sm-10a hrefjavascript:addNewTask() classbtn btn-default btn-lg btn-block btn-a提交发布/a/div/div/form /div 第二步运行测试-任务管理功能 1登录用户后先查看待完成任务列表页面 2发布新任务页面 -------------------------------------------------end -------------------------------------------------
http://www.dnsts.com.cn/news/270534.html

相关文章:

  • 网页设计与制作论文6000自己网站怎么做百度优化
  • 做的好的h游戏下载网站婚礼策划师
  • php建站软件哪个好常熟制作网站的地方
  • 网站建设需要哪些功能网站开发就是ssh吗
  • 做网站公司价格多少定制商城网站的费用
  • 东营网站排名优化公司天元建设集团有限公司资质
  • 湖北网站设计企业营销方案策划
  • 网站主流系统编程做网站
  • 团购网站怎么运营wordpress评论框函数
  • 如何创建问卷网站163企业邮箱登陆
  • 个人备案的网站能做盈利吗做自己任务的网站
  • 网站建设 资讯wordpress缩略图中大大
  • 西安做企业网站做网上竞猜网站合法吗
  • 网站建设怎么申请域名做网站后台应该谁来做
  • 龙岩网站建设响应式网站检测工具
  • 淘宝的电子商务网站的建设腾讯云 wordpress教程视频
  • 做网站域名起什么作用西安推广网络排行
  • 南昌企业网站制作wordpress分页无效
  • 海外网站平台dw网页制作怎么改字体大小
  • 公司展示网站制作安庆做网站的
  • 建设防伪网站厦门规划建设局网站
  • 做热点图现在用什么网站南京市住房和城乡建设部网站
  • 黄页网站介绍把代码到wordpress
  • 阿里云免费网站建设模板哈尔滨速成网站建设
  • 游乐园网站建设建网站带支付链接
  • 哈尔滨无障碍网站建设网站域名服务器
  • 个人备案网站可以做淘宝客自己做的网站涉黄
  • 网站推广seo设置网页制作成app
  • 南昌网站建设包括哪些wordpress ciphpdown
  • 贵州省城乡和住房建设厅网站首页提升wordpress访问速度