Esempio n. 1
0
def derive_dataset(request, slug):
    user = authorize(request)

    title = request.REQUEST.get('title', 'Untitled dataset')
    parent_dataresource=slug

    if 'parent_page' in request.REQUEST:
        parent_page = Page.objects.get(slug=request.REQUEST['parent_page'])
        authorize(request, parent_page, add=True)
    else:
        parent_page = get_data_page_for_user(request.user)

    parent_dataresource = DataResource.objects.get(slug=parent_dataresource)
    authorize(request, parent_dataresource, view=True)

    ds = SpatialiteDriver.derive_dataset(
        title=title,
        parent_page=parent_page,
        parent_dataresource=parent_dataresource,
        owner=request.user
    )

    dispatch.api_accessed.send(sender=DataResource, instance=ds, user=user)
    dispatch.dataset_created.send(sender=DataResource, instance=ds, user=user)
    return json_or_jsonp(request, {'path': ds.slug}, code=201)
Esempio n. 2
0
def derive_dataset(request, slug):
    user = authorize(request)

    title = request.REQUEST.get('title', 'Untitled dataset')
    parent_dataresource=slug

    if 'parent_page' in request.REQUEST:
        parent_page = Page.objects.get(slug=request.REQUEST['parent_page'])
        authorize(request, parent_page, add=True)
    else:
        parent_page = get_data_page_for_user(request.user)

    parent_dataresource = DataResource.objects.get(slug=parent_dataresource)
    authorize(request, parent_dataresource, view=True)

    ds = SpatialiteDriver.derive_dataset(
        title=title,
        parent_page=parent_page,
        parent_dataresource=parent_dataresource,
        owner=request.user
    )

    dispatch.api_accessed.send(sender=DataResource, instance=ds, user=user)
    dispatch.dataset_created.send(sender=DataResource, instance=ds, user=user)
    return json_or_jsonp(request, {'path': ds.slug}, code=201)
Esempio n. 3
0
    def test_derive_dataset(self):
        ds2 = SpatialiteDriver.derive_dataset('derived dataset', self.ds,
                                              self.ds)
        self.assertIsInstance(ds2, DataResource)

        rs = ds2.resource.get_rows(1, 100, geometry_format='wkt')
        self.assertEqual(
            len(rs), 100,
            'derived dataset length {n}. should have been 100'.format(
                n=len(rs)))
Esempio n. 4
0
    def test_derive_dataset(self):
        ds2 = SpatialiteDriver.derive_dataset('derived dataset',self.ds, self.ds)
        self.assertIsInstance(ds2, DataResource)

        rs = ds2.resource.get_rows(1, 100, geometry_format='wkt')
        self.assertEqual(len(rs), 100, 'derived dataset length {n}. should have been 100'.format(n=len(rs)))