Ejemplo n.º 1
0
def create_snippet(request):
    """ paste code on this page """

    if request.method == 'GET':
        form = SnippetForm()

    elif request.method == 'POST':
        form = SnippetForm(data=request.POST)
        if form.is_valid():
            snip_post = form.save(commit=False)  # return instates

            #            code_list = list()
            #            code = snip_post.code.split('\n')
            #            for i, line in enumerate(code, 1):
            #                this = f'{i}'.zfill(2) + ' ' + line
            #                code_list.append(this)
            #
            #            snip_post.code = '\n'.join(code_list)

            snip_post.save()  # now save
            form.save_m2m()
            # send to display view (below)
            # using url related name
            return redirect('snippet_detail', pk=snip_post.id)

    lang = Language.objects.order_by('name')
    context = {'form': form, 'lang': lang}
    return render(request, 'create.html', context)
Ejemplo n.º 2
0
def create(request):
  if request.method == "GET":
    form = SnippetForm()  
  elif request.method == "POST":
    form = SnippetForm(request.POST)
    if form.is_valid():
      data = form.cleaned_data
      snippet = Snippet(title=data.get('title'), content=data.get('content'))
      snippet.save()
      return redirect('view',snippet.id)
  return render(request, 'snippets/create.html',{'form':form})
Ejemplo n.º 3
0
def new_snippet(request):
    if request.method == 'POST':
        form = SnippetForm(request.POST)
        if form.is_valid():
            snippet = form.save(commit=False)
            snippet.created_by = request.user
            snippet.save()
            return redirect(top)
    else:
        form = SnippetForm()
    return render(request, "snippets/snippet_new.html", {'form': form})
Ejemplo n.º 4
0
def edit_snippet(request, snippet_id):
    snippet = get_object_or_404(Snippet, pk=snippet_id)

    if request.method == "POST":
        form = SnippetForm(request.POST, instance=snippet)
        if form.is_valid():
            form.save()
            messages.add_message(request, messages.SUCCESS, "スニペットを更新しました。")
            return redirect('snippet_detail', snippet_id=snippet_id)
    else:
        form = SnippetForm(instance=snippet)
    return render(request, 'snippets/snippet_edit.html', {'form': form})
Ejemplo n.º 5
0
def snippet_change(request, pk):
    """ crud, update snippet """

    s = Snippet.objects.get(id=pk)

    if request.method == 'GET':
        form = SnippetForm(instance=s)
    elif request.method == 'POST':
        form = SnippetForm(instance=s, data=request.POST)
        if form.is_valid():
            update_snip = form.save(commit=False)
            update_snip.save()
            return redirect('snippet_detail', pk=update_snip.id)

    s_name = s.title
    context = {'form': form, 'name': s_name}
    return render(request, 'snippet_change.html', context)
Ejemplo n.º 6
0
 def test_valid(self):
     params = {
         'title': 'hello world',
         'code': 'print("Hello World")',
         'description': 'Just printing "Hello World"',
     }
     snippet = Snippet()
     form = SnippetForm(params, instance=snippet)
     self.assertTrue(form.is_valid())
Ejemplo n.º 7
0
def snippets_list(request):
    snippets = Snippet.objects.all()
    forms = []

    for snippet in snippets:
        forms.append(SnippetForm(instance=snippet))
    return render(request, 'snippets/snippets_list.html', {
        'snippets_list': snippets,
        'snippets_forms': forms,
    })
Ejemplo n.º 8
0
def generate_snippet_and_gist_forms(request):
    # Gist UpdateForm or CreateForm
    possible_gist = Gist.objects.filter(title=request.POST.get("title", None),
                                        author=request.user.author)
    if possible_gist.exists():
        gist_form = GistForm(data=request.POST, instance=possible_gist.first())
    else:
        gist_form = GistForm(data=request.POST)

    # Snippet UpdateForm or CreateForm
    snippet_form = SnippetForm(data=request.POST)
    if possible_gist.exists():
        possible_snippet = Snippet.objects.filter(file_name=request.POST.get(
            "file_name", None),
                                                  gist=possible_gist.first())
        if possible_snippet.exists():
            snippet_form = SnippetForm(data=request.POST,
                                       instance=possible_snippet.first())

    return snippet_form, gist_form
Ejemplo n.º 9
0
 def test_should_specify_title(self):
     params = {}
     snippet = Snippet()
     form = SnippetForm(params, instance=snippet)
     self.assertFalse(form.is_valid())