我需要将数据库字段中的最新值传递给控制器。我也在进行某些关于从控制器视图中获得的值的计算。我不知道如何使用视图中的值到控制器。我是django的新手。任何帮助,将不胜感激。以下是我的代码,
在我的views.py
中class SiverifyAddReviewView(JSONResponseMixin, TemplateView):
template_name = "siverify_add_review.html"
def get_context_data(self,*args, **kwargs):
latest_id = SiverifyVerificationSiteRevision.objects.order_by('-id').first().id
context = super(SiverifyAddReviewView, self).get_context_data(*args, **kwargs)
print 'latest_id', latest_id
context['reviewtit'] = 'Review_' + latest_id + '_' + time.strftime(%Y%m%d)
context['ngapp'] = 'ReviewMod'
return context
在下面的行中,SiverifyVerificationSiteRevision是型号名称,我需要字段ID的最新值。
l_id = SiverifyVerificationSiteRevision.objects.latest('id')
这是从模型中获取最新值的正确方法吗?而对于控制器,我需要执行以下功能。
控制器:
{{ngapp}}.controller(
"SiVerifyAddReviewController",
function($scope, $http, $modalInstance, r_header, context){
$scope.today= function dat() {
var d = new Date();
return 'Review_' + **l_id** + ((d.getFullYear() + ' ' + (d.getMonth() + 1) + ' ' + d.getDate()).replace(/ /g, ''));}
$scope.arform['revtitle']= $scope.today();}
与return语句( l_id )一样,我需要从视图中获取最新值并进入模板。我的模板代码是,
模板:
<tr>
<td><label>Review Title/Purpose*</label></td></br>
<td><input type="text" class="col-md-10" maxlength="256" ng-model="arform.revtitle" required/></td>
</tr>
我确信应该有办法从视图中获取值到控制器,我已经经历了几个问题标记,例如从View传递值到Controller。但它们似乎都与我的需求无关。欢迎任何方法。谢谢。
答案 0 :(得分:1)
您是否需要最新的日期或最新的插入数据库?那有点不同。
def get_context_data(self, **kwargs):
latest_id = SiverifyVerificationSiteRevision.objects.latest('date').id # `latest` method works on date fields.
# This one gives you latest ID by insert.
# latest_id = SiverifyVerificationSiteRevision.objects.order_by('-id').first().id
kwargs['latest_id'] = latest_id
kwargs['ngapp'] = 'ReviewMod'
return kwargs