logo
down
shadow

Categorize results based on Model in haystack?


Categorize results based on Model in haystack?

Content Index :

Categorize results based on Model in haystack?
Tag : python , By : Jonathan Bernard
Date : December 01 2020, 05:00 PM

around this issue Each result has an attribute model_name. So you can use groupby in your view, or check result.model_name when looping through the result in your search results template.

Comments
No Comments Right Now !

Boards Message :
You Must Login Or Sign Up to Add Your Comments .

Share : facebook icon twitter icon

Django Haystack/Solr: Faceting on a model but show results only from a ForeignKey field


Tag : django , By : smbrant
Date : March 29 2020, 07:55 AM
I hope this helps you . I solved this with the help of Daniel Lindsay(Haystack/pySolr author) on haystack mailing list.
from haystack import indexes

class Medicine(indexes.SearchIndex):
    field_1 = indexes.MultiValuedField(faceted=True)
    # Other field definitions


    def prepare_field_1(self, object):
        values = list()
        for app in object.applications.all():
            values.append(app.field_on_which_to_facet)
        return values

    # define "prepare_fieldname" methods for other fields in similar fashion.

Finding the number of haystack results by model type?


Tag : django , By : chintown
Date : March 29 2020, 07:55 AM
will help you Have you tried just creating another facet for that? The only potentially difficult part would be getting the model name. Most likley, you would want to use verbose_name so it's more readable, which you can get from _meta.verbose_name. However, something like the following code probably wouldn't work:
model = CharField(model_attr='_meta.verbose_name', faceted=True)
def get_model_name(self):
    return self._meta.verbose_name
model = CharField(model_attr='get_model_name', faceted=True)

Count Results Based on Categorize Range Age (Query MySQL)


Tag : mysql , By : Kirks
Date : March 29 2020, 07:55 AM
This might help you I have a table like this: , You need a derived table, in order to get the rows with a zero count:
select r.range, count(t.age)
from (select '15-19' as range, 15 as lo, 19 as hi  union all
      select '20-44' as range, 20 as lo, 44 as hi  union all
      . . . 
     ) r left join
     t
     on t.age >= r.lo and t.age <= r.hi
group by r.range
order by min(r.lo);

Categorize Data within table and count based upon results


Tag : sql , By : Jakub Filak
Date : March 29 2020, 07:55 AM
this one helps. As the bound conditions you have provided here seems pretty much static, we can create a derived table that uses the T-SQL table value constructor to specify multiple rows for the base table as:
select 
       BT.Lives_Category ,
       count(CT.clean_ft_ee_cnt) as Number_of_Clients
from @mvp_client_data_t CT
join
             --base table here
 (
             select * from 
             (values ('1-9',1,9),
                     ('10-49',10,49),
                     ('50-199',50,199)
             )
             as Base_Table (Lives_Category,MinCnt,MaxCnt)
 ) BT    
 on CT.clean_ft_ee_cnt between BT.MinCnt and BT.MaxCnt
 group by BT.Lives_Category

Combine two queries that both categorize the data based upon the results


Tag : sql , By : mobi phil
Date : March 29 2020, 07:55 AM
will help you I do not know enough about your data to know if you should use a inner, left, right, or full join. So you should modify the join to suit your situation, but this should get you on the right track. Basically, I put each your your select statement in a subquery and join on the common field, "Lives Category".
SELECT    COALESCE(x.[Lives Category], y.[Lives Category]) AS [Lives Category]
        , x.[MVP Number of Clients]
        , x.[MVP Sum of Lives]
        , y.[Number of Clients]
        , y.[Sum of Lives]
FROM      (
              SELECT   t1.Lives_Category         AS [Lives Category]
                     , COUNT(t3.clean_ft_ee_cnt) AS [MVP Number of Clients]
                     , SUM(t3.clean_ft_ee_cnt)   AS [MVP Sum of Lives]
              FROM     mvpGA.mvp_client_data_t AS t3
              JOIN     (
                           SELECT *
                           FROM   (
                                      VALUES ('1-9 Lives', 1, 9)
                                           , ('10-49 Lives', 10, 49)
                                           , ('50-199 Lives', 50, 199)
                                           , ('200-499 Lives', 200, 499)
                                           , ('500-1,9999 Lives', 500, 1999)
                                           , ('2,000+ Lives', 2000, 100000000)
                                           , ('Total Lives', 0, 100000000)
                                           , ('500+ Lives', 500, 1000000000)
                                           , ('Unknown Lives', 0, 0)
                                  ) AS Base_Table (Lives_Category, MinCnt, MaxCnt)
                       )                       AS t1 ON t3.clean_ft_ee_cnt BETWEEN t1.MinCnt AND t1.MaxCnt
              WHERE    t3.mvp_rpt_id > 1399
                       AND t3.clean_do_not_use_ind IS NULL
                       AND t3.clean_client_indv_flag = 'Group'
              GROUP BY t1.Lives_Category
          ) AS x
FULL JOIN (
              SELECT   DISTINCT
                       a1.Lives_Category         AS [Lives Category]
                     , COUNT(t2.clean_ft_ee_cnt) AS [Number of Clients]
                     , SUM(t2.clean_ft_ee_cnt)   AS [Sum of Lives]
              FROM     mvpGA.mvp_client_data_t AS t2
              JOIN     (
                           SELECT *
                           FROM   (
                                      VALUES ('1-9 Lives', 1, 9)
                                           , ('10-49 Lives', 10, 49)
                                           , ('50-199 Lives', 50, 199)
                                           , ('200-499 Lives', 200, 499)
                                           , ('500-1,9999 Lives', 500, 1999)
                                           , ('2,000+ Lives', 2000, 100000000)
                                           , ('Total Lives', 0, 100000000)
                                           , ('500+ Lives', 500, 1000000000)
                                           , ('Unknown Lives', 0, 0)
                                  ) AS Base_Table (Lives_Category, MinCnt, MaxCnt)
                       )                       AS a1 ON t2.clean_ft_ee_cnt BETWEEN a1.MinCnt AND a1.MaxCnt
              WHERE    t2.mvp_rpt_id = 1400
                       AND t2.clean_mvp_rpt_breakout = 'Fargo'
                       AND t2.clean_do_not_use_ind IS NULL
                       AND t2.clean_client_indv_flag = 'Group'
              GROUP BY a1.Lives_Category
          ) AS y ON x.[Lives Category] = y.[Lives Category];
Related Posts Related QUESTIONS :
  • Variable used, golobal or local?
  • I have a regex statement to pull all numbers out of a text file, but it only finds 77 out of the 81 numbers in the file
  • How do I create a dataframe of jobs and companies that includes hyperlinks?
  • Detect if user has clicked the 'maximized' button
  • Does flask_login automatically set the "next" argument?
  • Indents in python 3
  • How to create a pool of threads
  • Pandas giving IndexError on one dataframe but not on another similar dataframe
  • Django Rest Framework - Testing client.login doesn't login user, ret anonymous user
  • Running dag without dag file in airflow
  • Filling across a specified dimension of a numpy array
  • Python populating dataframe in pandas from text files
  • How to interpolate a single ("non-piecewise") cubic spline from a set of data points?
  • Divide 2 integers (leetcode 29) - recursion issue
  • Can someone explain why do I get this output in Python?
  • How do I scrape pdf and html from search results without obvious url
  • Is there a way to automatically make a "collage" of plots with matplotlib?
  • How to combine multiple rows in pandas with shared column values
  • How do I get LOAD_CLASSDEREF instruction after dis.dis?
  • Django - How to add items to Bootstrap dropdown?
  • Linear Regression - Does the below implementation of ridge regression finding coefficient term using gradient method is
  • How to drop all rows in pandas dataframe with negative values?
  • Most Efficient Way to Find Closest Date Between 2 Dataframes
  • Execution error when Passing arguments to a python script using os.system. The script takes sys.argv arguments
  • Looping through a function
  • Create a plot for each unique ID
  • a thread python with 'while' got another thread never start
  • Solution from SciPy solve_ivp contains oscillations for a system of first-order ODEs
  • trigger python events driven by selenium controlled browser
  • Passing line-edits to a contextmanager to set validators
  • Python: globals().items() iterations try to change a dict
  • Is it possible to specify starting values for each parameter (instead of bounds) for scipy's differential evolution?
  • why datetime.now() and constructed datetime using all fields(like year,month...) of now has big timedelta?
  • MySQL multiple table UPDATE query using sqlalchemy core?
  • find if a semantic version is superset of of another version python
  • Type checking against dynamically created objects
  • Struggling with simple reverse function
  • Is there a function for finding the midpoint of n points on sklearn.neighbors.NearestNeighbors?
  • How to set max number of tweets to fetch
  • PYTHON 3.7.4 NOT USING SQLITE 3.29.0
  • How to replace Nan value with zeros in a numpy array?
  • How to speed up calculating variance among sparse matrix
  • cupy code is not fast enough compared with numpy
  • How to count frequency of select values in Python pandas dataframe
  • Scrape Span Text from Google
  • Python watchdog, watch a directory and rename file on event.modification
  • Filtering rows in DataFrame with dependent conditions
  • How to check if a character is a not a part of number or URL in string?
  • Compare corresponding elements of a list
  • Python misinterprets 3 character string as UTF-8 continuation byte
  • Merge two columns in Pandas
  • Side Effect error in Python in an online compiler
  • How to convert a navigation list with depth levels to a parent-child flat list?
  • Retrieving values from a paired key dictionary in Python
  • How to test the current text of a Tkinter text box widget before inserting new text after user clicks on a button?
  • computing the Cumulative Sum, where Sum can be reset by a condition
  • Where do you specify your API key when making a request with the Google API python library?
  • Pandas DataFrame, computing the Time Difference between one row and other row which satisfies a condition
  • Discord.py bot not reading other bot's messages
  • How do I write a Django query that finds words in a Postgres column?
  • shadow
    Privacy Policy - Terms - Contact Us © scrbit.com