我想点击对象并更改其属性值,并通过使用新属性值更新对象来保存它。
我尝试使用x-editable实现它但是它给了我一个问题,如下图所示。我相信它与我在main.js脚本中定义的url有关。
任何想法我该如何解决?我想使用django模型保存功能,因为我将其用于其他原因。
这是当我点击subage值和x-editable jquery时:
终端返回:
<%= render MyApp.EmailView, "index.html", conn: @conn, emails: @user.emails %>
以下是我的模板代码的一部分:
[08/May/2016 17:06:03]"POST /post HTTP/1.1" 404 2027
这是我的main.js代码:
{% for substage in trsubstage.substages_related %}
{% for zone in zones %}
{% if zone == substage.stage.zone %}
<td style="width:40px" align="center">
<div id="substage">
<a href="#" data-pk="{{ substage.id }}" data-type="text" >
{{ substage.substage_value }}</a>
</div>
</td>
{% endif %}
{% endfor %}
{% endfor %}
这是我的网址:
$(document).ready(function() {
//toggle `popup` / `inline` mode
$.fn.editable.defaults.mode = 'popup';
$('#substage a').editable({
type: 'text',
name: 'username',
url: '/post',
title: 'Enter username'
});
});
这是我的模型Substage:
urlpatterns = [
url(r'^$', views.MainStatusView.as_view(), name='mainstatus'),
]
答案 0 :(得分:0)
您没有名为&#34; post&#34;在你的urls.py中,所以你的js功能,但请求不知道在哪里发送你的数据。
答案 1 :(得分:0)
好的,
下面是更新后的代码,现在工作正常,所以我可以保存值: - )
模板:
{% for substage in trsubstage.substages_related %}
{% for zone in zones %}
{% if zone == substage.stage.zone %}
<td style="width:40px" align="center">
<div id="substage">
<a href="#" data-pk="{{ substage.id }}" data-type="text" >
{{ substage.substage_value }}</a>
</div>
</td>
{% endif %}
{% endfor %}
{% endfor %}
</tr>
{% endfor %}
main.js
$(document).ready(function() {
//toggle `popup` / `inline` mode
$.fn.editable.defaults.mode = 'popup';
$('#substage a').editable({
type: 'text',
name: 'username',
url: '/main/dupa/',
title: 'Enter username'
});
});
<强> urls.py 强>
urlpatterns = [
url(r'^$', views.MainStatusView.as_view(), name='main'),
url(r'^dupa/$', views.dupa, name='dupa'),
]
<强> views.py 强>
@csrf_exempt
def dupa(request):
if request.POST:
z = SubStage.objects.get(pk=request.POST.get('pk'))
z.substage_value = int(request.POST.get('value'))
z.save()
return HttpResponseRedirect('/main/')