Python 在django中为概要文件创建编辑页面

Python 在django中为概要文件创建编辑页面,python,django,edit,profile,Python,Django,Edit,Profile,我是初学者。我的项目是关于公司和客户的。我已经为他们创建了个人资料页面。现在我想创建一个编辑页面,这样公司就可以编辑他们的个人资料。 我的模型是: class Company_Profile(models.Model): user = models.OneToOneField(User) name = models.CharField(_('Company Name'), max_length= 30) logo = models.FileField(_('Company

我是初学者。我的项目是关于公司和客户的。我已经为他们创建了个人资料页面。现在我想创建一个编辑页面,这样公司就可以编辑他们的个人资料。 我的模型是:

class Company_Profile(models.Model):
    user = models.OneToOneField(User)
    name = models.CharField(_('Company Name'), max_length= 30)
    logo = models.FileField(_('Company Logo'), upload_to=get_upload_file_name, null=True, blank=True)
    address = models.TextField(_('Contact Address'), max_length=50)
    phone_no = models.IntegerField(_('Contact No'), max_length=12) 

class Customer_Profile(models.Model):
    user = models.OneToOneField(User)
    first_name = models.CharField(_('First Name'), max_length= 30)
    middle_name = models.CharField(_('Middle Name'), max_length= 30,null = True,blank=True)
    last_name = models.CharField(_('Last Name'), max_length= 30)
    photo = models.ImageField(_('Photo'), upload_to=get_upload_file_name, null=True, blank=True)
    address = models.TextField(_('Contact Address'), max_length=50)
    phone_no = models.IntegerField(_('Contact No'), max_length=12)
my views.py是:

def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
           user = User.objects.create_user(
           username=form.cleaned_data['username'],
           password=form.cleaned_data['password1'],
           email=form.cleaned_data['email']
            )
           return HttpResponseRedirect('/login/')
    else:
        form = RegistrationForm()
    catagories = Company_Profile.objects.all()
    customers = Customer_Profile.objects.all()
    return render_to_response('index1.html',
                          {'form': form, 'catagories': catagories,     'customers' : customers},RequestContext(request))

def edit_company(request, offset):
    if request.method == 'POST':
       company_edit = update_company_prof(request.POST, instance = request.user.company_profile)
       if company_edit.is_valid():
           company_edit.save()
           return HttpResponseRedirect('company/'+str(company_edit.id))
    else:
       company_edit = update_company_prof(instance = request.user.company_profile)
    return render_to_response('edit_comp_prof.html', {'company_edit':   company_edit}, context_instance=RequestContext(request))
我要编辑的html页面是:

<form action="" method="post" enctype="multipart/form-data">{% csrf_token %}
{{ company_edit.as_p }}
<input type="submit" value="Update" />
 <input type="reset" class="btn" value="cancel">
</form>

我得到的只是更新按钮,其他什么都没有。帮帮我

首先,由于您的配置文件模型中有
用户
模型的
外键
,因此每个
用户
可以有多个配置文件。如果要将其设置为单个,请将其更改为:

user = models.OneToOneField(User)
然后,您可以使用模型名称访问您的配置文件,例如:

instance = request.user.company_profile


您的update_company_教授必须扩展forms.ModelForm,而不是UpdateView。还考虑将Update EngyPyProf的名称更改为类似于PrimePrryFrm的名称,因为它目前非常误导。请将您的代码格式化正确,缩进遍及该地方。我改为OnEndoField,并且实例=Realest.Ur.PosiySyPrror,现在我只得到了更新按钮。我将编辑我的代码。您还可以发布
update\u company\u prof
的代码,您的
update\u company\u prof
必须扩展
表单。ModelForm
,而不是
UpdateView
。还考虑将代码< > UpDeTyPosiyPro of < /C> >改为“代码> PosiyPrryFrase< /代码>,因为它在瞬间是非常误导的。LOGO作为链接出现。我应该怎么做才能使照片出现。您不能在表单中修复它,但可以在模板的其他位置放置一个img标记:
instance = request.user.company_profile
instance = request.user.user_profile