app/django/db/backends/postgresql/client.py
changeset 323 ff1a9aa48cfd
parent 54 03e267d67478
equal deleted inserted replaced
322:6641e941ef1e 323:ff1a9aa48cfd
       
     1 from django.db.backends import BaseDatabaseClient
     1 from django.conf import settings
     2 from django.conf import settings
     2 import os
     3 import os
     3 
     4 
     4 def runshell():
     5 class DatabaseClient(BaseDatabaseClient):
     5     args = ['psql']
     6     executable_name = 'psql'
     6     if settings.DATABASE_USER:
     7 
     7         args += ["-U", settings.DATABASE_USER]
     8     def runshell(self):
     8     if settings.DATABASE_PASSWORD:
     9         args = [self.executable_name]
     9         args += ["-W"]
    10         if settings.DATABASE_USER:
    10     if settings.DATABASE_HOST:
    11             args += ["-U", settings.DATABASE_USER]
    11         args.extend(["-h", settings.DATABASE_HOST])
    12         if settings.DATABASE_PASSWORD:
    12     if settings.DATABASE_PORT:
    13             args += ["-W"]
    13         args.extend(["-p", str(settings.DATABASE_PORT)])
    14         if settings.DATABASE_HOST:
    14     args += [settings.DATABASE_NAME]
    15             args.extend(["-h", settings.DATABASE_HOST])
    15     os.execvp('psql', args)
    16         if settings.DATABASE_PORT:
       
    17             args.extend(["-p", str(settings.DATABASE_PORT)])
       
    18         args += [settings.DATABASE_NAME]
       
    19         os.execvp(self.executable_name, args)