2012-07-07 21 views
6

Tengo la configuración de django-registration y envía correos electrónicos, ¡yay!django-registration - ¿cómo cambio example.com en el correo electrónico?

Sin embargo, se decidió que sería bueno llamar a mi sitio "example.com", que no es el nombre que decidí usar. Nombre genial, pero no para mí

¿Cómo cambio example.com a otra cosa? Leí en algún lado que voy a la página de administración pero - alerta de spoiler - Nunca he usado la página de administración en django y no estoy planeando esto actualmente (¿pero quizás algún día?)

Así que voy a la página de administración - /admin/sites/site/ - y por supuesto puedo ver "example.com" y "domain name". Pero ahora que? Agregué el nombre de dominio de mi sitio y el "nombre para mostrar", pero ¿cómo puedo seleccionar para usarlo? ¡Incluso borré example.com!

Sin embargo, el correo electrónico insiste en seguir enviando example.com. Todos los sitios que leí solo dicen "use admin", pero no sé si mi administrador está roto (lo cual sería extraño, ya que realmente no lo he tocado) o si me falta un enlace.

¿Alguna idea?

Respuesta

10

La entrada que vio originalmente en la página admin/sites/site/, con example.com y domain name, es la que debe simplemente editar para obtener los resultados más rápidos (en lugar de agregar un nuevo objeto de Sitio).

¿Qué está pasando realmente?

En su archivo de configuración, Django define automáticamente una propiedad SITE_ID cuando crea su proyecto, que está configurado por defecto en 1. Esto apunta al sitio example.com que ve en el administrador. Si desea utilizar el objeto Site que creó o cambiar los objetos de Sitio más adelante cuando necesite la funcionalidad, puede cambiar esa propiedad SITE_ID a la identificación del objeto Site que ha creado. ¡Espero que esto ayude!

+0

ahhhhh. déjame darle un giro. Debería haber notado que después de eliminar el registro de example.com falla porque el ID "1" ya no está en el DB. ¡Tonto, y todo tiene sentido ahora con lo que dijiste ~! – bharal

+0

para que quede claro: arreglé mi problema agregando una nueva entrada a la tabla django_site. La entrada tenía una identificación de uno, y luego mi dominio y nombre para mostrar - ¡uf! Ahora todo funciona, brillante y gracias. – bharal

2

El objeto de sitio en la plantilla proviene del modelo de sitio de Django. Cuando hace un syncdb, se predetermina automáticamente a example.com

Si inicia sesión en la interfaz de administración de Django, encontrará "Sitios". Dentro de él, podrá cambiar example.com a su gusto. Simplemente configure el id del sitio que desea usar como sitio actual en su settings.py como SITE_ID = ID. por ejemplo, si editó el nombre de dominio example.com en mysite.com y el nombre para mostrar es MYSITE. luego SITE_ID = 1 porque ese es el único contenido que tenemos en nuestra tabla "Sitios" y su ID es 1. Si desea añadir otros "sitios" detalles de salir de la virgen example.com, recuerde poner el SITE_ID-ID de uno u añadieron

enter image description here

Cuestiones relacionadas