def search_dataset_data(self, request, **kwargs):
        """
        Perform a full-text search on only one dataset.

        See ``get_list``.
        """
        dataset = Dataset.objects.get(slug=kwargs['dataset_slug'])

        try:
            query = '(%s)' % request.GET['q']
        except KeyError:
            query = ''

        since = request.GET.get('since', None)
        limit = int(request.GET.get('limit', settings.PANDA_DEFAULT_SEARCH_ROWS))
        offset = int(request.GET.get('offset', 0))
        sort = request.GET.get('sort', '_docid_ asc')

        solr_query_bits = [query]
        solr_query_bits.append('dataset_slug:%s' % dataset.slug)

        if since:
            solr_query_bits.append('last_modified:[' + since + 'Z TO *]')

        response = solr.query(
            settings.SOLR_DATA_CORE,
            ' AND '.join(solr_query_bits),
            offset=offset,
            sort=sort,
            limit=limit
        )

        dataset_resource = DatasetResource()
        dataset_bundle = dataset_resource.build_bundle(obj=dataset, request=request)
        dataset_bundle = dataset_resource.full_dehydrate(dataset_bundle)
        dataset_bundle = dataset_resource.simplify_bundle(dataset_bundle)
       
        results = [SolrObject(d) for d in response['response']['docs']]

        page = PandaPaginator(
            request.GET,
            results,
            resource_uri=request.path_info,
            count=response['response']['numFound']
        ).page() 
        
        dataset_bundle.data.update(page)
        dataset_bundle.data['objects'] = []

        for obj in results:
            bundle = self.build_bundle(obj=obj, request=request)
            bundle = self.full_dehydrate(bundle)
            dataset_bundle.data['objects'].append(bundle.data)

        # Because users may have authenticated via headers the request.user may
        # not be a full User instance. To be sure, we fetch one.
        user = UserProxy.objects.get(id=request.user.id)
        
        SearchLog.objects.create(user=user, dataset=dataset, query=query)

        return dataset_bundle
dataset/ETHPy150Open pandaproject/panda/panda/api/data.py/DataResource.search_dataset_data/original