2017-09-13 14 views
0

내 모델은 다음과 같습니다어떻게 사용자 지정 양식의 만화에 게시물을 연결 않습니다

는 views.py
class ComicSeries(models.Model): 
     """Model definition for ComicSeries.""" 

     # TODO: Define fields here 
     user = models.ForeignKey(User, on_delete=models.CASCADE, 
       null=True, blank=True, verbose_name='Uploaded by: ' 
      ) 
     title = models.CharField(verbose_name='Series Title', max_length=500) 
     cover = models.ImageField(verbose_name='Series cover', upload_to='comic_series', 
       height_field=None, width_field=None, max_length=None 
      ) 
     description = models.TextField(verbose_name='Description') 
     artist = models.CharField(verbose_name='Artist(s)', max_length=500) 
     date_uploaded = models.DateTimeField(auto_now_add=True) 
     slug = models.SlugField(default='') 

class ComicIssue(models.Model): 
    """Model definition for ComicIssue.""" 

    # TODO: Define fields here 
    user = models.ForeignKey(User, on_delete=models.CASCADE, 
      null=True, blank=True, verbose_name='Uploaded by: ' 
     ) 
    title = models.ForeignKey(ComicSeries, on_delete=models.CASCADE, verbose_name='Series Title') 
    issue = models.CharField(verbose_name='Issue Number', max_length=500) 
    issue_title = models.CharField(verbose_name='Issue Title', max_length=1000) 
    issue_cover = models.ImageField(verbose_name='Issue cover', upload_to='comic_issues', height_field=None, width_field=None, max_length=None) 
    issue_description = models.TextField(verbose_name='Description') 
    issue_file = models.FileField(verbose_name='Issue file', upload_to='comic_issues_files', max_length=100, 
     help_text='File in pdf or as single image' 
    ) 
    is_favorite = models.BooleanField(default=False) 
    issue_slug = models.SlugField(default='') 

하십시오 ComicIssue가 속한 나는 어떤을 선택할 수 있어요

class ComicIssueCreate(LoginRequiredMixin, CreateView): 
    model = ComicIssue 
    fields = ['issue_title', 'issue_cover', 'issue_description', 'issue_cover', 'issue_file'] 

    def form_valid(self, form): 
     form.instance.user = self.request.user 
     return super(ComicIssueCreate, self).form_valid(form) 

가 ComicSeries 장고 관리자에게.

In django admin there is an option to upload

But on my form, there is no field when I add 'title'

템플릿 :

{% block body %} 
    <div class="container"> 
    <h2>Add new comic issue/chapter</h2> 
    <form class="form", action="", method="POST", enctype="multipart/form-data"> 
     {% csrf_token %} 
     {% for field in form %} 
     <div class="form-group form"> 
      <span class="text-danger small"> 
       {{field.errors}} 
      </span> 
     </div> 
     <label class="control-label col-sm-2"> 
      {{field.label_tag}} 
      {{field.help_text}} 
     </label> 
     <div class="col-sm-10">{{field}}</div> 
     {% endfor %} 
     <button type="submit" class="btn grey-text black">Add</button> 
    </form> 
    </div> 
{% endblock body %} 

하지만 사용자 지정 양식에 이렇게 문제가 있습니다. 어떤 일련의 문제가 CreateView를 사용하여 사용자 지정 양식에 속하는지 결정할 수있는 방법이 있습니까? ComicIssueCreate에서

답변

0

당신은 '놓쳤다 제목은 '입니다. 제목가 ComicSeries에 ComicIssue의 외래 키이기 때문에, 당신은

class ComicIssueCreate(LoginRequiredMixin, CreateView): 
     model = ComicIssue 
     fields = ['title', 'issue_title', 'issue_cover', 'issue_description', 
        'issue_cover', 'issue_file'] 

     def form_valid(self, form): 
      form.instance.user = self.request.user 
      return super(ComicIssueCreate, self).form_valid(form) 

업데이트가 필요 뭐죠 분야에서 달성하는 것을 포함 할 필요가 : 문제는 MaterializeCSS의이 '선택'초기화하지 때문. MaterializeCSS에서 작업 할 필드를 선택해야합니다.

<script> 
    $(document).ready(function() { 
     $('select').material_select(); 
    }); 
    </script> 
+0

제목을 추가하면 양식에 아무 것도 표시되지 않습니다. 레이블은 있지만 거기에 입력 할 옵션이나 필드가 없습니다. – Kariuki

+0

양식이 렌더링되는 템플리트를 제공 할 수 있습니까? –

+0

질문에 템플릿을 추가했습니다 – Kariuki

0

필드는 제목을 포함해야한다

그래서 필드는 = [ '제목', 'issue_title', 'issue_cover', 'issue_description', 'issue_cover', 'issue_file']

+0

제목을 추가하면 양식에 아무 것도 표시되지 않습니다. 레이블은 있지만 거기에 기입 할 옵션이나 필드가 없습니다. – Kariuki

+0

먼저 admin에 몇 개의 만화 제목을 추가하고 만화 제목을 추가하여 만화 제목이나 만화에 속하는 특정 만화 문제를 추가 할 수 있습니다. – cpkthompson

+0

'제목'을 추가 할 때 내 양식의 모양에 대한 스크린 샷 링크가 추가되었습니다. – Kariuki