2016-11-23 3 views
3

Gibt es eine Möglichkeit, die Informationen einer Datenbank in einer Django-Ansicht anzuzeigen?Heroku-Datenbankinformationen in Django anzeigen

Zum Beispiel weiß, dass ich in der Heroku cli Sie heroku pg:info -a your_app tun können, die Datenbank der Tabelle zählen, Zeilenanzahl, Art anzuzeigen usw.

Gibt es eine Möglichkeit, diese gleichen Informationen zu bekommen in Django, um es sichtbar in einer Vorlage, um den Speicher usw. zu verfolgen?

Antwort

0

ich verwendet, um die folgende Funktion, um die Zeilenanzahl der aktuellen Datenbank zu erhalten:

from django.db import connections 

def db_row_count(): 
    cursor = connections['default'].cursor() 
    query = """ 
     SELECT sum(reltuples) 
     FROM pg_class 
     WHERE relname 
     IN (
      SELECT c.relname 
      FROM pg_catalog.pg_class c 
      LEFT JOIN pg_catalog.pg_namespace n 
      ON n.oid = c.relnamespace 
      WHERE c.relkind = 'r' 
      AND n.nspname <> 'pg_catalog' 
      AND n.nspname <> 'information_schema' 
      AND n.nspname !~ '^pg_toast' 
      AND pg_catalog.pg_table_is_visible(c.oid) 
     ); 
     """ 
    cursor.execute(query) 
    row = cursor.fetchone() 
    return int(row[0]) 
Verwandte Themen