2014-07-25 2 views
0

Django 1.3 (내가 업데이트해야하지만 그 부분은 손에 닿지 않아야 함)과 mod_wsgi를 통해 작업 응용 프로그램 페이지를 만드는 중입니다. 사용자가 시도 할 때 문제가 발생합니다. 제출 된 응용 프로그램에서 이력서와 같은 업로드 된 파일을 볼 수 있습니다. 여기 업로드 된 파일을 사용할 수 없음 Django 1.3

은 페이지의보기 파일을

def apply(request, ann_id): 
user = UserManager(request) 
okay = user.isOk(request) 
if not okay: 
    raise Http404 
username = user.data.get('userName') 

if user.data.get('employeer') != "Company": 
    return render_to_response('lobbs/cannotApply.html', locals()) 

announcement = get_object_or_404(Announcements, id=ann_id) 

validation_errors = [] 
applicantBen_error = '' 
orgBen_error = '' 
ast_error = '' 
grade_error = '' 
fpl_error = '' 
resume_error = '' 
reviewedSOD_error = '' 
understand_error = '' 

if request.method == 'POST': 
    form = LookupForm(request.POST, request.FILES) 

    if form.is_valid(): 
     if announcement.type_id in [1,2,3]: 
      applicantBen = form.data.get('benefitApplicant','') 
      orgBen = form.data.get('benefitOrg','') 
      if not applicantBen: 
       applicantBen_error = ERROR_BENEFIT_APPLICANT 
       validation_errors.append(applicantBen_error) 
      if not orgBen: 
       orgBen_error = ERROR_BENEFIT_ORG 
       validation_errors.append(orgBen_error) 
     if announcement.type_id in [4,5]: 
      resumeFile = '' 
      try: 
       resumeFile = request.FILES['resume'] 
      except KeyError: 
       resumeFile = '' 
      reviewSOD = form.data.get('reviewedSOD','') 
      if not resumeFile: 
       resume_error = ERROR_RESUME 
       validation_errors.append(resume_error) 
      if not reviewSOD: 
       reviewedSOD_error = ERROR_REVIEWED_SOD 
       validation_errors.append(reviewedSOD_error) 
     if announcement.type_id == 4: 
      astTitle = form.data.get('title','') 
      grade = form.data.get('grade','') 
      fpl = form.data.get('fpl','') 
      if not astTitle: 
       ast_error = ERROR_AST 
       validation_errors.append(ast_error) 
      if not grade: 
       grade_error = ERROR_GRADE 
       validation_errors.append(grade_error) 
      if not fpl: 
       fpl_error = ERROR_FPL 
       validation_errors.append(fpl_error) 
      if announcement.tempPromotion: 
       understand = form.data.get('understandTempPromotion','') 
       if not understand: 
        understand_error = ERROR_UNDERSTAND 
        validation_errors.append(understand_error) 
     if announcement.type_id == 5: 
      verify = form.data.get('verifyCurrPos','') 
      if not verify: 
       verify_error = ERROR_VERIFY 
       validation_errors.append(verify_error) 
     if not validation_errors: 
      newLookupObject = form.save(commit=False) 
      newLookupObject.announcement = announcement 
      newLookupObject.announceNum = announcement.announceNum 
      newLookupObject.userID = user.data.get('id') 
      newLookupObject.save() 

      sender = u"EMAIL" 
      subject = u"LOBBS - Application Received" 
      textMail = u"Hello %s,<br><br>Your application for %s (%s), has been entered into LOBBS. You will be notified of a selection by the person selecting applicants.<br><br><br>%s" % (user.data.get('userName'), announcement.title,announcement.announceNum, LOBBS_URL) 
      recipients = [user.data.get('email')] 
      msg = EmailMessage(subject, textMail, sender, recipients) 
      msg.content_subtype = "html" 
      msg.send() 

      return HttpResponseRedirect(reverse('lobbs.views.index')) 

else: 
    #data = { 'announcement': announcement, 'announceNum': announcement.announceNum, 'userID': user.data.get('id') } 
    #form = LookupForm(data) 
    form = LookupForm(initial={'userName': user.data.get('userName'), 'phone': user.data.get('phone'), 
           'email': user.data.get('email'), 'org': user.data.get('org'), 'announcement': announcement, 
           'announceNum': announcement.announceNum, 'userID': user.data.get('id')}) 

return render_to_response('lobbs/apply.html', locals(), context_instance=RequestContext(request)) 

에 액세스하려고 그리고 여기 브라우저가 있다고 파일에 대한 링크를 클릭하면이

{% extends "base.html" %} 
{% block header %} 
    {% include 'lobbs/apply_header.html' %} 
{% endblock %} 
{% block main_content %} 
{% load url from future %} 

    <br /> 
    <div align="center"> 
    <form enctype="multipart/form-data" name="software" action="{% url 'lobbs_apply' ann_id=announcement.id %}" method="post" onreset ="return confirm('Erase ALL data and start over?')"> 
    {% csrf_token %} 
    <table width = "600" cellspacing = "0" cellpadding = "2" align = "center" border = 0> 
    <tr> 
     <td bgcolor = "#eaeaea" colspan="2"> 
     <font color="red"> 
      {% for field in form %} 
      {% if field.errors %} 
       {{ field.label_tag }} - {{ field.errors }} 
      {% endif %} 
      {% endfor %} 
      {% if validation_errors %} 
      <ul> 
       {% for item in validation_errors %} 
       <li>{{ item }}</li> 
       {% endfor %} 
      </ul> 
      {% endif %} 
     </font> 
     </td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>Opp No</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ announcement.announceNum }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>Title</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ announcement.title }}</td> 
    </tr> 
    {% if announcement.type.id == 1 or announcement.type.id == 2 or announcement.type.id == 3 %} 
     <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>Description</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ announcement.description }}</td> 
     </tr> 
    {% else %} 
     <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{% if announcement.type.id != 5 %}Statement of Duties/{% endif %}Position Description</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{% if announcement.statementOfDuties%} <a href="{{ announcement.statementOfDuties.url }}">{% if announcement.type.id != 5 %}Statement of Duties/{% endif %}Position Description</a>{% endif %}</td> 
     </tr> 
    {% endif %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>Type</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ announcement.type }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.userName.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.userName }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.phone.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.phone }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.email.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.email }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.org.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.org }}</td> 
    </tr> 
    {% if announcement.type_id = 4 %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.title.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.title }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right" nowrap="nowrap"><strong>{{ form.grade.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.grade }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.fpl.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.fpl }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right">&nbsp;</th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">SNIP</td> 
    </tr> 
    {% endif %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.supApproval.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.supApproval }}</td> 
    </tr> 
    {% if announcement.type_id = 1 or announcement.type_id = 2 or announcement.type_id = 3 %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.benefitApplicant.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.benefitApplicant }}</td> 
    </tr> 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.benefitOrg.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.benefitOrg }}</td> 
    </tr> 
    {% endif %} 
    {% if announcement.type_id = 4 or announcement.type_id = 5 %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right">&nbsp;</th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.reviewedSOD }} {{ form.reviewedSOD.label_tag }}</td> 
    </tr> 
    {% endif %} 
    {% if announcement.type_id = 4 %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right">&nbsp;</th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.understandTempPromotion }} {{ form.understandTempPromotion.label_tag }}</td> 
    </tr> 
    {% endif %} 
    {% if announcement.type_id = 5 %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right">&nbsp;</th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.verifyCurrPos }} {{ form.verifyCurrPos.label_tag }}</td> 
    </tr> 
    {% endif %} 
    <tr> 
     <th bgcolor = "#eaeaea" valign = "top" align = "right"><strong>{{ form.resume.label_tag }}</strong></th> 
     <td bgcolor = "#eaeaea" valign="top" align="left">{{ form.resume }}<br /><font color="red">*</font> LOBBS is not intended to collect Personally Identifiable Information (PII) from any users. Applicants are highly discouraged from including any PII in documents uploaded into the system.</td> 
    </tr> 
    <tr> 
     <td colspan="2"><INPUT TYPE = "submit" NAME = "Operation" VALUE = "Apply"> <INPUT TYPE = "reset" VALUE = "Reset"></td> 
    </tr> 
    </table> 

    </form> 
    </div> 
    <br /> 

{% endblock %} 

를 사용하는 템플릿입니다 웹 페이지를 사용할 수 없지만 URL은 파일이 서버에 저장된 경로를 따릅니다. 이 문제를 해결할 방법이 있습니까?

답변

0

어떤 이유로 든 서버가 파일을 업데이트하는 데 어려움을 겪었으므로 며칠 동안 문제를 해결하기 위해 구현 된 변경 사항을 무시했습니다. 그 후 완벽하게 작동했습니다.