Como era de esperar, no ha aparecido en la interfaz gráfica. ¿Cuáles son los pasos mínimos? ¿Necesito agregar datos a más tablas o debo reiniciar algo?
Ahora, es probable que alguien diga que esta no es la forma correcta de hacerlo, y lo entiendo. Sin embargo, para mí podría ser necesario, como explicaré a continuación (algunas de mis suposiciones pueden ser incorrectas, pero así es como lo entiendo):
Todos los scripts de importación que traen datos desde otro foro basado en base de datos esperan poder conectarse al otro foro desde la instancia de Discourse. Pero acceder al otro foro (jforum) desde una instancia de Discourse en producción será difícil, si no imposible. De manera similar, intentar instalar un entorno de desarrollo de Discourse donde resida el foro antiguo (un servidor muy antiguo) tampoco es posible.
No entiendo Ruby on Rails, por lo que no puedo modificar los scripts existentes, pero sí entiendo SQL.
Podría usar la API (solo tengo 5000 usuarios), pero quiero poder utilizar un método o plugin que conserve el hash de contraseña MD5, en lugar de obligar a todos los usuarios a restablecer sus contraseñas. Por lo tanto, creo que no puedo hacer esto mediante la API.
Existe un script de importación para jforum, por lo que puedo usarlo para revisar el SQL necesario para extraer datos de jforum sin problemas y luego colocarlos en archivos CSV para cargarlos en la base de datos.
Los importadores masivos posiblemente proporcionen una forma de agregar SQL directamente a Discourse, pero me cuesta ver el SQL necesario.
Parece que lo clave es importar los usuarios; luego, agregar categorías, temas y publicaciones no debería ser tan difícil.
The likelihood that you’ll end up with a corrupt database is pretty high. And then no one will be able to help you.
Dump your database and restore on your local Discourse server (or anywhere that it can connect to–I’ve done larger imports with a remote database over my home internet connection) and then run the existing script.
It’ll be much easier to use Ruby that you don’t understand than to understand it well enough to figure out how to write the SQL. I learned Ruby a long time after I wrote my first importer.
That is a bit condesensing !
If the bulk import script is running sql (as I think it is)then documenting the SQL required to create a user is really no more dangerous then trying to use a bulk import script. And since I currently have a vanilla discourse install it wouldn’t terribly matter it if got messed up.I expect I have many more years in development than yourself.
What I don’t have great experience is all the admin tasks, and my first attempt to install a local Discourse server just opened a can of worms, and if I cant connect to my JForum mysql server from my discourse server then I’m going to have to install mysql as well and transfer the database. The existing jforum script isn’t checked into the main source tree, and Im on a very old version of jforum so not expecting it to work.
Sometimes free advice from someone that’s worked with Discourse full time for over three years, has done scores of imports, and written several importers from scratch is worth what you pay for it.
Gracias, tengo algunas preguntas con las que espero puedas ayudarme.
Instalación
Ejecuta bundle exec rake plugin:install repo=http://github.com/[Communiteq](https://www.communiteq.com) (anteriormente DiscourseHosting)/discourse-migratepassword en tu directorio de Discourse
Reinicia Discourse
Ya lo he instalado, pero ¿cómo reinicio Discourse?
¿Cómo inserto el campo personalizado? ¿Puedes proporcionarme el SQL, o se puede hacer mediante la API con la parte "user_fields[1]": "string"? Actualmente puedo crear usuarios programáticamente mediante la API, pero estoy ignorando este campo por ahora.
Si tienes el plugin instalado, ¿es irrelevante el valor de la contraseña que se pasa como parte de la llamada a la API para crear un usuario?
no, it will prevail over the md5 digest in the custom field.
The answers to the other two questions can easily be found on this forum. If you want to save time we can do the import and/or hosting for you as a paid service.
I did search for both answers, was unable to find. In the first case it is confusing that some installs are done via editing the yaml file and then relaunching the docker , and some seem such as this are installed whilst in the docker container, its not cxlear what restart means in this case.
I cant really find any pure sql in this forum
Surprised there seems such a push to sale paid services for using this opensrc software , never like this when i ask questions on stackoverflow.
I love to think along, innovate and contribute. But I also need to make a living and that means that I need to draw a line somewhere, and I try to draw it where I get the idea that I’m doing work instead of innovating, contributing and thinking along.
Looking up the SQL query for a user custom field is work for me, and as you’re an experienced dev I estimate that you can figure it out as well
Okay I found it ./launcher restart app
but doesnt seem to be restarting, I can enter app and connect to db, but cant connect to website. May just rebuild and start again
So I ran ./launcher rebuild app and now it is back and working.
I thought this would recreate the database but it has not so I guess that is because the actual database is persisting outside of docker and rebuild just rebuilds the docker app. Also I see the dataexplorer plugin I added (by modifying the yaml file is still there). But is the passwordmigration plugin there or does it get wiped out by rebuild, there is certainly nothing in the plugs in section of the adminpage.
Right I tried installing passwordmigration and then ran restart again, and once again my site is down, it does seem like passwordmigration is breaking something ?
So rebuilt again, got it working (but now passwordmigration plugin missing). If I run ./launcher restart app without installing migrationpassword first it restarts okay, so does seem to be a particular problem with migrationpassword on my setup
Last time I tried, the passwordmigration plugin was incompatible with running an import, so you’ll want to install it after you do the import.
It could be that it’s breaking your rebuild, but that’d be fairly surprising, as Richard uses it in his hosting. I recommend that you install it in app.yml just as you did the data explorer after you’ve done your import.
rm -rf the postgres directories in /var/discourse/shared/standalone if you want to get a new database. Maybe have a look at Advanced Troubleshooting with Docker
Weird, dropped database and ran ./discourse-setup so had a brand new install, everything fine.
Installed migrationpassword with rake and restarted, again website fails with 502 !
DataExplorer plugin still existed, so removed that, rebuilt, ok, then reinstalled migrationpassword and fails with 502 again.
So confusing because clearly works for others but doesn’t work on my vanilla install.
Will try to install via editing the app.yml file next.
(Las compras de Navidad me lo impidieron), pero por fin probé a instalar migratepassword editando app.yml y reconstruyendo, ¡y funcionó!
Pero la opción bundle exec rake plugin:install repo=http://github.com/[Communiteq](https://www.communiteq.com) (formerly DiscourseHosting)/discourse-migratepassword no funciona en mi instalación estándar; quizás sea necesario verificarla o eliminarla en el README.md de GitHub - communiteq/discourse-migratepassword: Support migrated password hashes · GitHub