我想要做的很简单; 使用我的PHP代码从Mysql表中获取marker的数据,将其转换为geoJson(由MapBox使用),将geoJson发送到javascript,然后将这些标记填充到我的地图中.
我一直在仔细阅读以下两个链接,显然包含了我需要解决的所有信息,但我不确定我缺少什么.
在这里,您可以看到如何从MapBox中的geoJson填充标记的示例;
在这里,您可以看到如何从MySql表创建geoJson;
我的sql表看起来像这样,这里是创建代码加上一些虚拟数据;
-- phpMyAdmin SQL Dump
-- version 4.0.4.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Jul 21, 2013 at 03:26 PM
-- Server version: 5.5.32-cll-lve
-- PHP Version: 5.5.0
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
--
-- Database: `pgmq`
--
-- --------------------------------------------------------
--
-- Table structure for table `mapa`
--
CREATE TABLE IF NOT EXISTS `mapa` (
`contrato` int(11) NOT NULL,
`name` varchar(60) NOT NULL,
`address` varchar(80) NOT NULL, …Run Code Online (Sandbox Code Playgroud) 所以我尝试在同一方法下执行不同的操作,但最后定义的方法是唯一有效的方法,有没有办法做到这一点?
视图.py
class SomeViewSet(ModelViewSet):
...
@detail_route(methods=['post'])
def methodname(self, request, pk=None):
... action 1
@detail_route(methods=['get'])
def methodname(self, request, pk=None):
... action 2
Run Code Online (Sandbox Code Playgroud) 我有一个非常简单的代码来验证 Json 模式:
from jsonschema import validate
schema = {"type" : "object","properties" : {"command":{"type" : "string"}},"required": ["command"]}
request= {"command":12}
try:
jsonschema.validate(request, schema)
except jsonschema.ValidationError as e:
print e.message
except jsonschema.SchemaError as e:
print e
Run Code Online (Sandbox Code Playgroud)
我得到了;
Traceback (most recent call last):
File "./json_validator.py", line 8, in <module>
except jsonschema.ValidationError as e:
NameError: name 'jsonschema' is not defined
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?