我在views.py中有以下视图 -
class FilterView(generics.ListAPIView):
model = cdx_composites_csv
def get(self, request, format=None):
vendor = self.request.GET.get('vendor')
filename = self.request.GET.get('filename')
tablename = filename.replace(".","_")
model = get_model(vendor, tablename)
filedate = self.request.GET.get('filedate')
snippets = model.objects.using('markitdb').filter(Date__contains=filedate)
serializer = cdx_compositesSerializer(snippets, many=True)
if format == 'raw':
zip_file = open('C:\temp\core\files\CDX_COMPOSITES_20140626.zip', 'rb')
response = HttpResponse(zip_file, content_type='application/force-download')
response['Content-Disposition'] = 'attachment; filename="%s"' % 'CDX_COMPOSITES_20140626.zip'
return response
else:
return Response(serializer.data)
Run Code Online (Sandbox Code Playgroud)
它适用于xml,json,csv,但是当我尝试使用raw时,它不会返回文件,而是提供""详细信息":"未找到""为什么会发生这种情况?
我正在点击的URL如下 -
有效的json示例 -
http://dt-rpittom:8000/testfilter/?vendor=markit&filename=cdx_composites.csv&filedate=2014-06-26&format=json
这应该返回一个zip文件供下载.
http://dt-rpittom:8000/testfilter/?vendor=markit&filename=cdx_composites.csv&filedate=2014-06-26&format=raw
我正在使用create-react-app而且我正在尝试集成font-awesome,所以我可以在我的SPA中使用它.
我已经完成npm install font-awesome并安装了它,但是当我尝试调用时,import 'font-awesome/css/font-awesome.css'我收到以下错误:
Compiling...
Failed to compile.
Error in ./~/font-awesome/css/font-awesome.css
Module parse failed: C:\Projects\myproject\ui\node_modules\font-awesome\css\font-awesome.css Unexpected character '@' (7:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '@' (7:0)
@ ./src/index.js 11:0-44
Run Code Online (Sandbox Code Playgroud) 我正在尝试在Django Rest Framework中设置基于类的视图.
这是我的urls.py -
from django.conf.urls import patterns, include, url
from rest_framework.urlpatterns import format_suffix_patterns
from django.contrib import admin
from TidalDEV import views
admin.autodiscover()
urlpatterns = patterns('',
url(r'^test/(?P<pk>[0-9]+)/$', views.TESTXMLDetail.as_view()),
)
Run Code Online (Sandbox Code Playgroud)
这是我的看法 -
import os, tempfile, zipfile
from django.shortcuts import render
from django.core import serializers
from django.core.serializers import serialize
from django.core.servers.basehttp import FileWrapper
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
from rest_framework.renderers import JSONRenderer, XMLRenderer
from rest_framework.parsers import JSONParser
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.permissions import …Run Code Online (Sandbox Code Playgroud) 我正在尝试为此处找到的数据表设置示例 -
http://www.datatables.net/examples/basic_init/zero_configuration.html
一切都很成功,但由于某种原因,排序图标是重复的,我不知道为什么.
这就像它显示的那样 -

这是我正在使用的HTML -
{% extends "dashboard/base.html" %}
{% load static %}
{% block extra_head %}
<!-- Tribal CSS -->
<link href="{% static "css/plugins/tribal/tribal-bootstrap.css" %}" rel="stylesheet" />
<link href="{% static "css/plugins/tribal/tribal-form.css" %}" rel="stylesheet" />
<!-- Tribal JS -->
<script src="{% static "js/plugins/tribal/tribal-form.js" %}"></script>
<script src="{% static "js/plugins/tribal/tribal-shared.js" %}"></script>
<!-- DataTables CSS -->
<link rel="stylesheet" type="text/css" href="//cdn.datatables.net/1.10.7/css/jquery.dataTables.css">
<!-- DataTables -->
<script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$('#files').DataTable();
} );
</script>
{% endblock %}
{% …Run Code Online (Sandbox Code Playgroud) 我正在运行这样的登录测试:
def test_login_user(self):
client = APIClient()
url = reverse('rest_login')
data = {
'username': 'test',
'password': 'Welcome2'
}
response = self.client.post(url, data)
self.assertEqual(response.status_code, status.HTTP_200_OK)
client.logout()
Run Code Online (Sandbox Code Playgroud)
如果我正常登录应用程序,我会看到一个 json 返回,如下所示:
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoyLCJ1c2VybmFtZSI6ImV2YW4iLCJleHAiOjE1MTQ2NzYzNTYsImVtYWlsIjoiZXZhbkAyOGJlYXR0eS5jb20iLCJvcmlnX2lhdCI6MTUxNDY3Mjc1Nn0.8CfhfgtMLkNjEaWBfNXbUWXQMZG4_LIru_y4pdLlmeI",
"user": {
"pk": 2,
"username": "test",
"email": "test@test.com",
"first_name": "",
"last_name": ""
}
}
Run Code Online (Sandbox Code Playgroud)
我希望能够获取该token值以备将来使用,但是response似乎没有data获取值。
我在反向关系上获得以下追溯 -
Traceback:
File "/opt/common/external/python_modules/django/core/handlers/base.py" in get_response
164. response = response.render()
File "/opt/common/external/python_modules/django/template/response.py" in render
158. self.content = self.rendered_content
File "/opt/common/external/python_modules/rest_framework/response.py" in rendered_content
71. ret = renderer.render(self.data, media_type, context)
File "/opt/common/external/python_modules/rest_framework/renderers.py" in render
674. context = self.get_context(data, accepted_media_type, renderer_context)
File "/opt/common/external/python_modules/rest_framework/renderers.py" in get_context
635. 'content': self.get_content(renderer, data, accepted_media_type, renderer_context),
File "/opt/common/external/python_modules/rest_framework/renderers.py" in get_content
397. content = renderer.render(data, accepted_media_type, renderer_context)
File "/opt/common/external/python_modules/rest_framework/renderers.py" in render
103. separators=separators
File "/opt/common/external/anaconda/2.3.0/lib/python2.7/json/__init__.py" in dumps
250. sort_keys=sort_keys, **kw).encode(obj)
File "/opt/common/external/anaconda/2.3.0/lib/python2.7/json/encoder.py" in encode
209. chunks = list(chunks) …Run Code Online (Sandbox Code Playgroud) 我正在使用 liquibase 部署以下 SQL 代码:
-- updated Record Permissions trigger
USE [ITAM]
GO
/****** Object: Trigger [dbo].[tr_tblRecordPermissions] Script Date: 03/04/2016 22:10:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[tr_tblRecordPermissions] ON [dbo].[tblRecordPermissions] INSTEAD OF UPDATE, DELETE AS
BEGIN
SET NOCOUNT ON
--
-- Use a variable to capture current date/time and re-use
-- We don't want to repeatedly call getDate() as the time will drift
-- and it'll look like we updated different records at different times …Run Code Online (Sandbox Code Playgroud) 我知道可以执行以下操作:
class EnterpassUser(AbstractUser):
uuid = models.UUIDField(default=uuid4, editable=False, unique=True)
is_application = models.BooleanField(default=False, editable=False)
class Meta:
db_table = 'enterpassuser'
managed = True
def __str__(self):
return self.username
Run Code Online (Sandbox Code Playgroud)
这允许我使用auth_user模型并创建一个独特的enterpassuser模型来替换它。
我想这样做与模型组类似的事情但是每一个选项我遇到我的力量,以保持表的名称作为auth_group和auth_group_permissions在那里我想它保持同样的工艺流程创建自定义的用户模型。
我在我的urls.py上做了一点点变化,我从以下教程中得到了以下内容 -
mysite/urls.py -
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^TidalDEV/', include('TidalDEV.urls')),
)
Run Code Online (Sandbox Code Playgroud)
TidalDEV/urls.py -
from django.conf.urls import patterns, url
from TidalDEV import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index')
url(r'^(?P<pk>[0-9]+)/$', views.tesxml, name='tesxml'),
)
Run Code Online (Sandbox Code Playgroud)
这是views.py中的视图 -
def tesxml(self, request, pk, format=None, renderer_context=None):
"""
returns an XML of a jobmst listing
"""
template_vars['jobmst'] = (queryset1, [pk])
template_vars['jobdtl'] = (queryset2, [pk])
template_vars['jobdep'] = (queryset3, [pk])
t = loader.get_template('TidalAPI/templates/xml_template.xml')
c = Context(template_vars)
return …Run Code Online (Sandbox Code Playgroud) 我有一个视图,该视图用于GET和POST到不是默认数据库的数据库。
class DeployResourceFilterView(generics.ListAPIView):
serializer_class = ResourceSerializer
def get(self, request, format=None):
resname = self.request.GET.get('name')
queryset = Resmst.objects.db_manager('Admiral').filter(resmst_name=resname)
serializer = ResourceSerializer(queryset)
if queryset:
return Response(serializer.data)
else:
raise Http404
def post(self, request, format=None):
serializer = ResourceSerializer(data=request.DATA, many=True)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Run Code Online (Sandbox Code Playgroud)
GET可以正常工作,但在POST上,它总是会抱怨表不存在而不断失败。我的假设是这样做的原因是因为它试图使用默认数据库,而不是我定义为辅助数据库的“海军上将”数据库。如何分配POST以使用特定数据库而不是默认数据库?
django ×8
python ×3
datatables ×1
font-awesome ×1
javascript ×1
jquery ×1
liquibase ×1
reactjs ×1
unit-testing ×1