Changeset 3665
- Timestamp:
- 08/27/06 11:36:27 (2 years ago)
- Files:
-
- django/branches/multiple-db-support/django/conf/global_settings.py (modified) (1 diff)
- django/branches/multiple-db-support/django/contrib/auth/management.py (modified) (2 diffs)
- django/branches/multiple-db-support/django/contrib/contenttypes/management.py (modified) (2 diffs)
- django/branches/multiple-db-support/django/contrib/sites/management.py (modified) (1 diff)
- django/branches/multiple-db-support/django/core/management.py (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/multiple-db-support/django/conf/global_settings.py
r3581 r3665 300 300 301 301 AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend',) 302 303 ########### 304 # TESTING # 305 ########### 306 307 TEST_RUNNER='django.test.simple.run_tests' django/branches/multiple-db-support/django/contrib/auth/management.py
r3172 r3665 17 17 return perms + list(opts.permissions) 18 18 19 def create_permissions(app, created_models ):19 def create_permissions(app, created_models, verbosity): 20 20 from django.contrib.contenttypes.models import ContentType 21 21 from django.contrib.auth.models import Permission … … 28 28 p, created = Permission.objects.get_or_create(codename=codename, content_type__pk=ctype.id, 29 29 defaults={'name': name, 'content_type': ctype}) 30 if created :30 if created and verbosity >= 2: 31 31 print "Adding permission '%s'" % p 32 32 33 def create_superuser(app, created_models ):33 def create_superuser(app, created_models, verbosity, **kwargs): 34 34 from django.contrib.auth.models import User 35 35 from django.contrib.auth.create_superuser import createsuperuser as do_create 36 if User in created_models :36 if User in created_models and kwargs.get('interactive', True): 37 37 msg = "\nYou just installed Django's auth system, which means you don't have " \ 38 38 "any superusers defined.\nWould you like to create one now? (yes/no): " django/branches/multiple-db-support/django/contrib/contenttypes/management.py
r3148 r3665 6 6 from django.db.models import get_models, signals 7 7 8 def create_contenttypes(app, created_models ):8 def create_contenttypes(app, created_models, verbosity): 9 9 from django.contrib.contenttypes.models import ContentType 10 10 app_models = get_models(app) … … 20 20 app_label=opts.app_label, model=opts.object_name.lower()) 21 21 ct.save() 22 print "Adding content type '%s | %s'" % (ct.app_label, ct.model) 22 if verbosity >= 2: 23 print "Adding content type '%s | %s'" % (ct.app_label, ct.model) 23 24 24 25 dispatcher.connect(create_contenttypes, signal=signals.post_syncdb) django/branches/multiple-db-support/django/contrib/sites/management.py
r2809 r3665 8 8 from django.contrib.sites import models as site_app 9 9 10 def create_default_site(app, created_models ):10 def create_default_site(app, created_models, verbosity): 11 11 if Site in created_models: 12 print "Creating example.com Site object" 12 if verbosity >= 2: 13 print "Creating example.com Site object" 13 14 s = Site(domain="example.com", name="example.com") 14 15 s.save() django/branches/multiple-db-support/django/core/management.py
r3581 r3665 279 279 return map(str, final_output) 280 280 281 def syncdb( ):281 def syncdb(verbosity=2, interactive=True): 282 282 "Creates the database tables for all apps in INSTALLED_APPS whose tables haven't already been created." 283 283 from django.db import connection, transaction, models, get_creation_module … … 327 327 pending_references[refto] = refs 328 328 sql.extend(_get_sql_for_pending_references(model, pending_references)) 329 print "Creating table %s" % model._meta.db_table 329 if verbosity >= 2: 330 print "Creating table %s" % model._meta.db_table 330 331 for statement in sql: 331 332 cursor.execute(statement) … … 336 337 sql = _get_many_to_many_sql_for_model(model) 337 338 if sql: 338 print "Creating many-to-many tables for %s model" % model.__name__ 339 if verbosity >= 2: 340 print "Creating many-to-many tables for %s model" % model.__name__ 339 341 for statement in sql: 340 342 cursor.execute(statement) … … 346 348 for app in models.get_apps(): 347 349 dispatcher.send(signal=signals.post_syncdb, sender=app, 348 app=app, created_models=created_models) 350 app=app, created_models=created_models, 351 verbosity=verbosity, interactive=interactive) 349 352 350 353 # Install initial data for the app (but only if this is a model we've … … 1033 1036 runfcgi.args = '[various KEY=val options, use `runfcgi help` for help]' 1034 1037 1038 def test(verbosity, app_labels): 1039 "Runs the test suite for the specified applications" 1040 from django.conf import settings 1041 from django.db.models import get_app, get_apps 1042 1043 if len(app_labels) == 0: 1044 app_list = get_apps() 1045 else: 1046 app_list = [get_app(app_label) for app_label in app_labels] 1047 1048 test_path = settings.TEST_RUNNER.split('.') 1049 # Allow for Python 2.5 relative paths 1050 if len(test_path) > 1: 1051 test_module_name = '.'.join(test_path[:-1]) 1052 else: 1053 test_module_name = '.' 1054 test_module = __import__(test_module_name, [],[],test_path[-1]) 1055 test_runner = getattr(test_module, test_path[-1]) 1056 1057 test_runner(app_list, verbosity) 1058 test.help_doc = 'Runs the test suite for the specified applications, or the entire site if no apps are specified' 1059 test.args = '[--verbosity] ' + APP_ARGS 1060 1035 1061 # Utilities for command-line script 1036 1062 … … 1057 1083 'syncdb': syncdb, 1058 1084 'validate': validate, 1085 'test':test, 1059 1086 } 1060 1087 … … 1107 1134 parser.add_option('--plain', action='store_true', dest='plain', 1108 1135 help='Tells Django to use plain Python, not IPython, for "shell" command.') 1136 parser.add_option('--noinput', action='store_false', dest='interactive', default=True, 1137 help='Tells Django to NOT prompt the user for input of any kind.') 1109 1138 parser.add_option('--noreload', action='store_false', dest='use_reloader', default=True, 1110 1139 help='Tells Django to NOT use the auto-reloader when running the development server.') 1140 parser.add_option('--verbosity', action='store', dest='verbosity', default='2', 1141 type='choice', choices=['0', '1', '2'], 1142 help='Verbosity level; 0=minimal output, 1=normal output, 2=all output') 1143 1111 1144 options, args = parser.parse_args(argv[1:]) 1112 1145 … … 1135 1168 if action == 'shell': 1136 1169 action_mapping[action](options.plain is True) 1137 elif action in (' syncdb', 'validate', 'diffsettings', 'dbshell'):1170 elif action in ('validate', 'diffsettings', 'dbshell'): 1138 1171 action_mapping[action]() 1172 elif action == 'syncdb': 1173 action_mapping[action](int(options.verbosity), options.interactive) 1139 1174 elif action == 'inspectdb': 1140 1175 try: … … 1147 1182 try: 1148 1183 action_mapping[action](args[1]) 1184 except IndexError: 1185 parser.print_usage_and_exit() 1186 elif action == 'test': 1187 try: 1188 action_mapping[action](int(options.verbosity), args[1:]) 1149 1189 except IndexError: 1150 1190 parser.print_usage_and_exit()
