如何在GraphQL中返回函数结果

时间:2019-06-24 07:39:38

标签: python django reactjs graphql graphene-python

我在前端使用React,Apollo和GraphQL,在后端使用Django,Python和Graphene。

我想实现search_bar,当用户单击搜索按钮时,我想用用户输入执行GraphQL查询。

在后端,我要抓取该字符串,然后将其传递给函数,然后从要传递回前端的函数返回结果。

我的代码如下:

export const GET_RESULTS = gql`
query SearchVinResults($vin: String!){
  searchVinResults(vin: $vin) { 
        id
        label
        url
   }
  }`;


class VinSearch extends Component {       
    onVinSearch(e) {
        e.preventDefault();
        const {value, client: {query}} = this.props;
        query({query: GET_RESULTS, variables: { vin: value }});
    }

    render() {
        const {value, clearSearch, onChange} = this.props;
        return (
            <SearchField
                onChange={e => onChange(e)}
                clearSearch={() => clearSearch()}
                value={value}
                clearIcon="fal fa-times"
                placeholder="Search VIN"
                withButton={true}
                buttonStyles={{borderLeftWidth: 0}}
                onClick={e => this.onVinSearch(e)}
            />
        );
    }
}

export default withApollo(VinSearch);

后端

类查询(对象):     search_vin_results = ???? #我需要在这里做什么

def resolve_search_vin_results(self, info, **kwargs):
    # Here I want to do something like

    vin = info['vin']
    results = get_vins(vin)
    return results

有什么主意吗?

0 个答案:

没有答案