簡體   English   中英

Django提交表單工作開發未部署

[英]Django Submit Form Working Development Not Deployment

我有一個創建新博客文章並將我重定向到該博客文章的表格。 該表單在開發中可以正常工作,但是當我將應用程序部署到Heroku並單擊“提交”按鈕時,沒有任何反應。 數據庫,我的表單或管理功能(訪問表單所需)是否有問題? 在數據庫方面(如果與它有任何關系),我在Amazon S3上放了一個.dump並將其推到我的Heroku Postgres數據庫中。 任何幫助將是巨大的!

views.py中的相關部分:

@login_required 
def post_new(request):
    if request.method == "POST":
        form = PostForm(request.POST)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.save()
            if post.category == 'progresstracker':
                return redirect('books.views.pt_detail', slug=post.slug, category=post.category)
            elif post.category == 'resources':
                return redirect('books.views.resources')
            else:
                return redirect('books.views.bt_detail', slug=post.slug, category=post.category)
    else:
        form = PostForm()
    return render(request, 'blog/post_edit.html', {'form': form})  

def pt_detail(request, slug, category):
    post = get_object_or_404(Post, slug=slug, category__slug=category)
    template = CATEGORY_TEMPLATES.get(post.category.slug)
    return render(request, template, {'post': post})  

表格:

{% extends 'blog/base.html' %}

{% block nav %}
    <li><a href="/home">Home</a></li>
    <li><a href="/progresstracker">Progress Tracker</a></li>
    <li class="dropdown">
        <a href="/blogtopics" class="dropbtn">Blog Topics</a>
        <div class="dropdown-content">
            <a href="/blogtopics/computer-science">Computer Science</a>
            <a href="/blogtopics/data-science">Data Science</a>
            <a href="/blogtopics/other">Other</a>
        </div>
    </li>
    <li><a href="/resources">Resources</a></li>
{% endblock %}


{% block content %}
<div id="content">
    <div class="padding">
        <h1>New post</h1>
            <form method="POST" class="progresstracker-form">{% csrf_token %}
            {{ form.as_p }}
            <button type="submit" class="save btn btn-default">Save</button>

            </form>

    </div>
</div>
{% endblock %}

實際的問題是遷移,如果您查看一下heroku日志,則會看到模型的relation錯誤。

要解決此問題:

  1. 首先確保您已將所有遷移添加到git repo中:

    git add <myapp>/migrations/* git commit -m "Fix Heroku deployment" git push heroku

  2. 然后,您需要通過運行以下命令在Heroku上再次遷移:

heroku運行bash

~$  ./manage.py makemigrations
~$  ./manage.py migrate
~$  exit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM