OK, looks like nobody can help with this. Would recreating the forum from scratch help, then restoring saved database backup? Or would restoring the backup just propagate the deletions again?
I think that it would sorry.
Somewhere in that database is the little bit of data that you must change to make those posts appear once more. Here in fact:
In the ‘topics’ table, deleted_at will have a timestamp for ID 4, 5, and 6. If you can delete these (replace with nothing / blank) then you will be back in business.
I know that you can do this from Ruby/Rails, but that is outside of my skills thusfar - but for someone with the skills it would be a 5 minute job. Perhaps whoever set you up with the instance can help out.
Sadly, I set myself up following the official tutorial, with little comprehension.
I did have a developer migrate some material in for me early on, and contacted them about this a week ago, but no luck so far getting a response.
What I am wondering though is if there is an open source desktop application that connects to and allows viewing and editing of postgre tables in Digital Ocean? Or even that could read and edit a downloaded backup, which I then restore?
** Edit - rereading replies to a similar query, the consensus seems to be to use Ruby if doing anything
at all, rather than a friendly looking GUI database application.
That said, what are the commands I would issue in PuTTY to access the database and delete the timestamps for topics ID 4,5 and 6 in the topics table deleted_at? (after backup taken)?
Hi again - in my lame way, I tried the following query in Data Explorer, and got no relevant hits for messages deleted in the Staff category
SELECT * FROM topics WHERE deleted_at is not NULL AND category_id = 3
or even in any category
SELECT * FROM topics WHERE deleted_at is not NULL
So wondering if there is something else going on if the topics were not deleted?. Is there some other way to detect those missing topics? Or are system posts perhaps not stored in the topics table at all?
Good to see your Data Explorer skills!
Those topics are definitely in the topics table.
SELECT id, title, deleted_at FROM topics Order by id Limit 10
You should get something like this:
PS you might also need to change
Hey @Paul_King, have you tried this?
Do you have any of 1-10? It appears not.
It could be that rebuilding the site from scratch and then merging the databases in some way is the way forwards. Or get hacking that postgres!
Hi Nathan - that definitely lists a bunch of deleted topics, but none of the pre-seeded ones missing from the staff category
I am wondering if I even can hack the database to cancel deletions if there is no sign of the missing pre-seeded posts ever having existed? Is there a way to rerun the setup wizard on an existing installation, to trigger those pre-seeeded posts to be created? Is there some way the setup wizard could have omitted them the first time? (perhaps there was an option where I clicked ‘skip’ the first time round?)
Is it possible that there was a bug in play with the then current discourse version at the time I set up?
Is it possible that if the missing pre-seeded posts are not even marked as deleted, but simply don’t exist, the absences will not propagate or overwrite anything if I restore backed up database to a fresh Discourse install? Or is it the case that the starting database is removed entirely and replaced by the backup, with all its flaws?
Another thing to try is selecting
privacy_topic_id from the
Sorry, with this SQL:
SELECT value FROM site_settings WHERE name = 'tos_topic_id'
I may well be doing this wrong but for me
SELECT tos_topic_id, site_settings
or (not sure which is correct, if any)
SELECT tos_topic_id FROM site_settings
PG::UndefinedColumn: ERROR: column “tos_topic_id” does not exist
LINE 7: SELECT tos_topic_id, site_settings
Which I take to mean there is no ‘tos_topic_id’?
Similar result for
guidelines_topic_id , and
This may helps: How to regenerate FAQ and TOS pages?
Thank you!! That is exactly what I was looking for - though sadly for me the final
command gives an error - not sure why, or how to deal with it.
What’s the error? (It’s always a good idea to post the error if you want help. )
 pry(main)> rake topics:update_static[zh_CN] NameError: undefined local variable or method `update_static' for main:Object
You were running the rake task in the rails console which doesn’t work. But when you run it correctly, you will notice that the rake task doesn’t exist anymore.
Is there a way to get the TOS and Privacy links in the signup dialog to work? Nothing above seems to have achieved that for me, though I can recreate TOS and Privacy topics that are not linked.
I am unsure exactly how these topics came to be missing in the first place. I just assumed I must have deleted them accidentally somehow when I discovered they were missing, but from my reading it seems this is not even supposed to be possible within the user interface - and given others seem to have struck a similar issue, could this involve a possible bug somewhere?
I’m not sure how you got on in the end, Paul, but you could now construct your own TOS and Privacy pages using this:
Awesome! Thanks for the heads up Nathan.
Confirming this did the trick!
A workaround that might unravel if the site ever moved to another url, but great in the meantime to at least allow people the option to see what the terms of service etc actually are before they sign up!