Historical: HOW TO USE DJANGO-SQL-EXPLORER IN TENDENCI MMS

tendenci6megamenu.png

December 28, 2025
This wonderful insightful blog post about how to leverage the Django SQLExplorer on your Tendenci site was written back in 2015 when Tendenci v6 was released. What tendenci version is your site on? Yes, you can access the data you need with Tendenci’s SQL Explorer Data Analysis Tool right from your website! Read this blog to learn about it. -S.R.

February 7, 2015
Tendenci 6 ships with the excellent django-sql-explorer from ePantry. This means you can export anything at any time and build any report you want whenever you want. Absolute 100% anytime freedom of access to your data. #JOY #FREEDOM #ROCKS

First a warning. If you choose to use a direct query tool know they are dangerous. You are doing so at your own risk and could possibly corrupt your database beyond repair up to and including requiring a dba to come in and repair it at a cost of thousands of quid. So…. BE CAREFUL.

SQL explorer is a way to directly query your site through the user interface. It is for superusers only and we recommend disabling it by default (see disclaimer above.) But if you are still reading here is the lightning version.

  1. Login to your Tendenci6 site at /accounts/login/
  2. Navigate to /explorer/
  3. Click on playground and test out some queries. For example here are two
    1. “select tablename from pg_tables” – without the quotes to list all 300 tables in your database
    2. “select * from articles_article” – list all articles including expired and inactive etc.
  4. If you like the queries click “new query” and name and describe them and click save.
  5. Click on the SQL explorer icon top left and your back at the dashboard with icons to download the results of your queries.

Visually when you add the URL /explorer/ to the end of your site path you will see something very similar to this.

django-sql-query-dashboard.png

First note the icon on the right to Download CSV so you can download all of whatever that query is for.  If you don’t see any, no worries – that’s what this post is about!

So let’s write a basic sql statement.

django-sql-playground.png

And then when you click “New  Query” you will find this interface and you can carefully name and describe your query so you know what it does later.

creating-new-tendenci-query-for-csv-download.png

 

1) ALL Interactive users:

SELECT  u.first_name, u.last_name, u.email, u.username, u.is_staff,  u.is_superuser, p.salutation, p.company, p.position_title, p.phone,  p.address, p.address2, p.member_number, p.city, p.state, p.zipcode,  p.country, p.url, p.sex, p.address_type, p.phone2, p.fax, p.work_phone,  p.home_phone, p.mobile_phone, p.notes, p.admin_notes FROM auth_user u  INNER JOIN profiles_profile p ON u.id=p.user_id WHERE u.is_active=True  AND p.status=True AND p.status_detail='active'

Copy Paste Version:

SELECT u.first_name, u.last_name, u.email, u.username, u.is_staff, u.is_superuser, p.salutation, p.company, p.position_title, p.phone, p.address, p.address2, p.member_number, p.city, p.state, p.zipcode, p.country, p.url, p.sex, p.address_type, p.phone2, p.fax, p.work_phone, p.home_phone, p.mobile_phone, p.notes, p.admin_notes FROM auth_user u INNER JOIN profiles_profile p ON u.id=p.user_id WHERE u.is_active=True AND p.status=True AND p.status_detail=’active’

2) ALL memberships:

SELECT u.first_name, u.last_name, u.email, u.username, u.is_staff, u.is_superuser,
    p.salutation, p.company, p.position_title, p.phone, p.address, p.address2, 
    p.member_number, p.city, p.state, p.zipcode, p.country, p.url, p.sex, 
    p.address_type, p.phone2, p.fax, p.work_phone, p.home_phone, p.mobile_phone,
    m.membership_type_id, m.renewal, m.certifications, m.work_experience,
    m.referer_url, m.referral_source, m.join_dt, m.expire_dt, m.renew_dt,
    m.primary_practice, m.how_long_in_practice, m.application_approved,
    m.application_approved_dt, m.areas_of_expertise, m.home_state,
    m.year_left_native_country, m.network_sectors, m.networking,
    m.government_worker, m.government_agency, m.license_number,
    m.license_state, m.status_detail
FROM auth_user u
INNER JOIN profiles_profile p
ON u.id=p.user_id
INNER JOIN memberships_membershipdefault m
ON m.user_id=u.id
WHERE u.is_active=True
AND p.status=True
AND m.status_detail <> 'archive'

Copy Paste Version:

SELECT u.first_name, u.last_name, u.email, u.username, u.is_staff, u.is_superuser, p.salutation, p.company, p.position_title, p.phone, p.address, p.address2, p.member_number, p.city, p.state, p.zipcode, p.country, p.url, p.sex, p.address_type, p.phone2, p.fax, p.work_phone, p.home_phone, p.mobile_phone, m.membership_type_id, m.renewal, m.certifications, m.work_experience, m.referer_url, m.referral_source, m.join_dt, m.expire_dt, m.renew_dt, m.primary_practice, m.how_long_in_practice, m.application_approved, m.application_approved_dt, m.areas_of_expertise, m.home_state, m.year_left_native_country, m.network_sectors, m.networking, m.government_worker, m.government_agency, m.license_number, m.license_state, m.status_detail FROM auth_user u INNER JOIN profiles_profile p ON u.id=p.user_id INNER JOIN memberships_membershipdefault m ON m.user_id=u.id WHERE u.is_active=True AND p.status=True AND m.status_detail <> ‘archive’

3) ALL corporate members:

SELECT cp.name, cp.address, cp.address2, cp.city, cp.state, cp.zip, cp.country,
    cp.phone, cp.email, cp.url, cp.number_employees, cp.chapter, cp.tax_exempt,
    cp.annual_revenue, cp.annual_ad_expenditure, cp.description, cp.expectations,
    cp.notes, cp.referral_source, cp.ud1, cp.ud2, cp.ud3, cp.ud4, cp.ud5, cp.ud6, 
    cp.ud7, cp.ud8, cm.corporate_membership_type_id, cm.renewal, cm.renew_dt,
    cm.join_dt, cm.expiration_dt, cm.approved, cm.admin_notes, cm.status_detail
FROM corporate_memberships_corpprofile cp
INNER JOIN corporate_memberships_corpmembership cm
ON cp.id=cm.corp_profile_id
WHERE cm.status_detail <> 'archive'

Copy Paste Version:

SELECT cp.name, cp.address, cp.address2, cp.city, cp.state, cp.zip, cp.country, cp.phone, cp.email, cp.url, cp.number_employees, cp.chapter, cp.tax_exempt, cp.annual_revenue, cp.annual_ad_expenditure, cp.description, cp.expectations, cp.notes, cp.referral_source, cp.ud1, cp.ud2, cp.ud3, cp.ud4, cp.ud5, cp.ud6, cp.ud7, cp.ud8, cm.corporate_membership_type_id, cm.renewal, cm.renew_dt, cm.join_dt, cm.expiration_dt, cm.approved, cm.admin_notes, cm.status_detail FROM corporate_memberships_corpprofile cp INNER JOIN corporate_memberships_corpmembership cm ON cp.id=cm.corp_profile_id WHERE cm.status_detail <> ‘archive’

4) All users in a specific group (replace <YOUR GROUP ID> with your group id)

SELECT ug.name, u.first_name, u.last_name, u.email, u.username, u.is_staff, u.is_superuser, p.salutation, p.company, p.position_title, p.phone, p.address, p.address2, p.member_number, p.city, p.state, p.zipcode, p.country, p.url, p.sex, p.address_type, p.phone2, p.fax, p.work_phone, p.home_phone, p.mobile_phone FROM auth_user u INNER JOIN profiles_profile p ON u.id=p.user_id INNER JOIN user_groups_groupmembership ugm on u.id=ugm.member_id INNER JOIN user_groups_group ug on ug.id=ugm.group_id WHERE ug.id=<YOUR GROUP ID> AND ugm.status=True AND ugm.status_detail='active'

Copy Paste Version:

SELECT ug.name, u.first_name, u.last_name, u.email, u.username, u.is_staff, u.is_superuser, p.salutation, p.company, p.position_title, p.phone, p.address, p.address2, p.member_number, p.city, p.state, p.zipcode, p.country, p.url, p.sex, p.address_type, p.phone2, p.fax, p.work_phone, p.home_phone, p.mobile_phone FROM auth_user u INNER JOIN profiles_profile p ON u.id=p.user_id INNER JOIN user_groups_groupmembership ugm on u.id=ugm.member_id INNER JOIN user_groups_group ug on ug.id=ugm.group_id WHERE ug.id=<YOUR GROUP ID> AND ugm.status=True AND ugm.status_detail=’active’

 

Contribute back your brilliance to the rest of us? Have you written some good queries for Tendenci using the amazing  django-sql-explorer from ePantry? Post them on the Tendenci Community Site for others to learn and share with!

Please do be careful. Remember the warnings above. Using a live sql tool on a relational database for anything besides SELECT queries is ill-advised. It really is your live data on a live site SO BE CAREFUL!

We believe this level of access to the superusers on Tendenci sites is empowering. We like knowing people can download any of their data when they need it. And perhaps contribute back some suggested new reports to the Tendenci Community as a whole!

Because Tendenci is part of the Django community and we couldn’t have brought this functionality to you without others in the community “giving first.” We may have added it to Tendenci, but that’s ONLY because of the generosity of building and making it available by others. Explorer is brought to you by the power of collaborative open source software (THANK YOU ePantry!)

Note this is a cross post from our help files. See the Help File for the latest accurate info at: https://www.tendenci.com/help-files/how-use-django-sql-explorer-tendenci/

NEW Major Release: Tendenci OSS v15.0

tendenci open source v15.x

Major Release: Tendenci v15.0 — Open Source Association Management Software (AMS)
Released March 30, 2024. As of October 8, 2025, Tendenci is currently on version 15.3.7.

A Heartfelt Thank You 🩵🐾`
First and foremost, we want to thank the GitHub community and all the developers contributing to the Tendenci project—your Tendenci project! Together, we continue to empower nonprofits and associations worldwide with open source freedom and transparency.

If you host your Tendenci website with us—great news: your site has already been upgraded. Yeii! 🤓🐾

Real People, Real Work 👩🏻‍💻🐾
It took a lot of planning and teamwork to cross the finish line for this major upgrade, and it wasn’t performed with Artificial Intelligence. It was done by real people—in particular, a strong programmer and developer who has passionately maintained the Tendenci repository for more than 15 years. Our team proudly celebrates our Chief Programmer, Jenny Qian, who continues to be a pillar of the Tendenci community.

Our Commitment to You 🐾
As always, we remain dedicated to providing our hosted clients with secure, scalable, and affordable managed hosting services in our AWS private cloud. Compared to other AMS platforms, our hosting stands out—
✅Security and privacy first

✅No per user or admin fees
✅No license fees
✅ Upgrades are included in the hosting plan that best suits your association

If your association is exploring a new Association Management System (AMS), we’d love to connect. Contact us for a free consultation and demo!

What’s New in Tendenci OSS v15.0?! 🙌

You can find the full list of software release and upgrade details in our CHANGELOG.md file.

Major Highlights
🤓 Dropped support for Django 3.2 LTS — Tendenci now requires Django 4.2 LTS.
🤓 Database updates — Minimum supported version raised: PostgreSQL 12+ required.
🤓 Base template upgrade — Tendenci now uses Font Awesome v6 by default (older Font-Awesome links should be updated).
🤓 URL configuration changes — Outdated url() imports replaced with re_path() in urls.py, in line with Django 4.x best practices.

For step-by-step upgrade instructions from v14.x to v15.0, visit our documentation on Read the Docs.

More in v15.x ✨

Tendenci v15.x is packed with exciting new features and enhancements—from the Newsletter module to Payments and Donations, Membership and Event Management updates, Directories module updates, and more!

Check out our recent version blog post for details:
🤩 Version bump 15.3 and 15.3.1
🤩 Version bump 15.3.4
🤩 Version bump 15.3.5

Remember to upgrade your Tendenci site to the latest version. Post your issues on GitHub for full support

tendenci logo
TendenciDEV Team

Welcome to Tendenci Open Source Community AMS Blog!

Ed Schipul and Tendenci

Community blog for Open Source AMS Makers

tendenci logo
Tendenci Open Source

Wuff, you’re here! This is Tendenci Open Source Association Management Software (AMS) Community Blog!

This is the community space where we share the latest updates and new features in Tendenci software — along with insights on association management, technology trends, events, marketing tips, and more! As we continue to contribute, fork, and help Tendenci grow, we want you to be the first to know. This blog is an easy way for us to stay connected and keep you informed.

Use Tendenci in all your devices and enjoy 100% responsiveness.

But don’t forget — we want to hear from you, too! Feel free to comment here, or even better, call or email us anytime at communications@tendenci.com. We’d love to discuss your questions, ideas, or suggestions to make your Tendenci experience even better.

Paw-sitive thanks open source community friends! 🐾

Upgrade to the Latest: Tendenci OSS v15.3.4 on GitHub

Tendenci is the only open source association management software (AMS).
You can download the code and have your Python/Django developer build exactly what your organization needs—no vendor lock-in, full data freedom.

Tendenci is a powerful platform created to support the unique needs of nonprofits and associations. It’s fully accessible to the world—an animal of a software, and truly a gift.

Thanks to a global community of developers, Tendenci evolves daily. It may sound cliché, but only together can we protect and strengthen the open source ecosystem.

v15.3.4 [2025-5-7] tendenci open source software on GitHub since 2009.

🔄 Is your site running the latest version?
Current release: v15.3.4
📌 Changelog on GitHub
📘 Documentation on Read the Docs

Need help? The TendenciDEV Team (women-driven), offers flexible, affordable services—from custom development and hosting to full problem solving support.

🌐 www.tendenci.com
📞 +1 (281) 497-6567

Join Our New Free Tendenci Platform Training Workshops

tendenci graphic for event management training

Advance your Tendenci admin skills by joining our free Event Management and Chapter Memberships training workshops this September and October!

These complimentary workshops are offered to our Tendenci hosted nonprofit organizations, associations, and partners. Encourage your volunteer staff to join and discover new event management features and chapter membership opportunities to engage your members and boost your sales. Don’t miss out!

tendenci upcoming training events

Check out all the upcoming tendenci platform training workshops here!  https://www.tendenci.com/events/search/

Register for our FREE Tendenci PlatformTraining Events!

tendenci training events graphic

March | April | May | ????

The Tendenci Platform Training Workshop series with President Nicole Davis has begun! This series offers a fantastic opportunity for you to elevate your tech skills and enables you to effectively engage your members and community. Throughout the training workshops, we are covering basics such as Tendenci features and layouts, as well as advanced topics like recurring memberships and event management. These workshops will equip you with the skills to maximize your platform usage and enhance your overall Tendenci experience. Join us now to make the most of this valuable learning opportunity!

Read more here: ➡️ https://www.tendenci.com/events/search/

BECAUSE PER USER AND ADMIN PRICING ENCOURAGES YOU NOT TO GROW YOUR ORGANIZATION

Ed Schipul and Tendenci

At Tendenci we don’t believe in charging by the user or admin. Tendenci is built on the concept of distributed authoring. There are multiple people on your board and many committee chairs. Shouldn’t each leader in your organization have the ability to post their own articles and manage their own events? Certainly! This sets us apart from other AMS options in the market, as we do not charge any admin or user fees because we want you to grow.

Leverage Tendenci, the only Open Source software solution that enables you to populate your CRM with prospective members, industry contacts, supporting partners, and existing members without worrying. Achieve maximum engagement through your Tendenci website, which offers affordable and transparent AMS options – specifically tailored for Non-Profits and Associations around the world.

Read more here: ➡️ https://www.linkedin.com/company/60615/admin/feed/posts/

Twitter Embed on your Tendenci site

Hi, Tendenci Community! If you’ve noticed your Twitter feeds not working with the message “Nothing to see here – yet,” it’s mostly due to a browser issue. To fix it, ensure you’re not blocking third-party tracking on your preferred browser to see your tweets feed on your Tendenci site. ????

Join us on Fosstodon to support blockchain social media! We’re exploring other blockchain social networks too. See you there! ????

“Most problems have either many answers or no answer. Only a few problems have one answer.”
— Edmund Berkeley

Your team, Tendenci

Tendenci AMS Logo
Tendenci AMS Logo

Are your users having issues with reCAPTCHA?

reCAPTCHA image from Google

Seems like there are occasions when our hosting clients are experiencing trouble on their Tendenci site due to reCAPTCHA. This doesn’t necessarily mean it is a Tendenci software problem but rather a Google issue. It is a service provided by Google to protect websites from automated bots and spam. If you are experiencing issues such as your users having difficulty completing the verification process or encountering errors on your Tendenci site, it is typically related to the Google reCAPTCHA service.

Our suggestion is the following: Make sure the browser is up to date and try disabling extensions. Here is an article with more details https://www.businessinsider.com/guides/tech/chrome-recaptcha-not-working.

If you haven’t already, get in touch with us so our team can set up reCaptcha V3 on your Tendenci website to better protect your site against spam, and at no cost. If you continue to run into issues, please don’t hesitate to contact us via our support team for further assistance.

Stay groovy,
TendenciDEV Team
blog@tendenci.com

Tendenci AMS Logo

We love our WordPress Blog

souvik-banerjee--WPrNEM_6dg-unsplash

Woof! Apologies for the wait. Our servers got into a spirited discussion about the best flavor of puppy ice cream. Thankfully, they reached a unanimous decision, and we’re ready to scoop up some great service for you on our Tendenci Community Blog for Open Source AMS Makers at WordPress!

The puppy loves you.