Python Daily
2.57K subscribers
1.48K photos
53 videos
2 files
38.9K links
Daily Python News
Question, Tips and Tricks, Best Practices on Python Programming Language
Find more reddit channels over at @r_channels
Download Telegram
Django points to the wrong version of Postgres

I downgraded Postgres.app from 9.6 to 9.5 by removing the Postgres.app desktop app. I updated the database by doing

(I downloaded Postgres by downloading Postgres.app Desktop app and I installed Django by doing pip install Django)

sudo /usr/libexec/locate.updatedb
And it looks like it is initiating database from the right directory.

/Applications/Postgres.app/Contents/Versions/9.5/bin/initdb
/Applications/Postgres.app/Contents/Versions/9.5/share/doc/postgresql/html/app-initdb.html
/Applications/Postgres.app/Contents/Versions/9.5/share/man/man1/initdb.1

However, when I am trying to do a migration in my Django app, it looks like the path is still point to the 9.6 version of Postgress

Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
utility.execute()
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 341, in execute
django.setup()
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/django/__init__.py", line 27, in setup
apps.populate(settings.INSTALLED_APPS)
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate
app_config.import_models(all_models)
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/django/apps/config.py", line 199, in import_models
self.models_module = import_module(models_module_name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/tenant_schemas/models.py", line 4, in <module>
from tenant_schemas.postgresql_backend.base import _check_schema_name
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/tenant_schemas/postgresql_backend/base.py", line 14, in <module>
import psycopg2
File "/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/psycopg2/__init__.py", line 50, in <module>
from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: dlopen(/Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: /Applications/Postgres.app/Contents/Versions/9.6/lib/libpq.5.dylib
Referenced from: /Users/me/Desktop/myapp/venv/lib/python2.7/site-packages/psycopg2/_psycopg.so
Reason: image not found


What I have tried:
1. uninstalled and reinstalled psycopg2
2. updated my database

Does anyone have recommendation as of how to reset path reference?




/r/django
https://redd.it/5kypf9
Would somebody be willing to do a rapid Q+A fire with me/code review with setting up my Flask backend for an iOS app?

Wondering if anyone is willing. I don't feel like just copying and pasting code, it would be much easier if I could talk in a chatroom type setting with somebody looking at my github repo. This is my first time setting up a backend and I think I'm on the right track with getting everything setup with Alamofire and proper routing, but I'm stuck on some nitty gritty stuff.

/r/flask
https://redd.it/5lbbou
Field metadata for name of choices

I've got a problem, I'm hoping someone here could help me.

If I have a field that has choices defined for it and I do

blah = field.choices it returns the tuple such as [('requested', 'Requested'), ('company-approval', 'Ready for Company Approval'), ('client-approval', 'Ready for Client Approval')]

what I'm looking for is what would I access for it to just return to me the variable that tuple is stored in in the models file.

Ex) if you have
status = models.CharField(choices=STATUS_CHOICES)
i'd want it to return to me 'STATUS_CHOICES' instead of the contents of that tuple


Thanks in advance!

/r/django
https://redd.it/5kyw3w
Does modern web development focus on the backend only providing an API?

Hello,

First, apologies for the beginner question.

I'm building an application that provides user registration, payment, and just general website stuff in Django.

* If I am doing this completely fresh, should I just focus on providing a REST API for all of these things and then using React.js or Vue.js to render the forms?
* Should I avoid using a JS library completely if nothing is a SPA?
* What is current practice for new projects where the focus is just having a modern, best practices, website?

Thanks for any help and again apologize for the beginner question.

/r/django
https://redd.it/5lc6qd
My first "professional" program

Hello, long time lurker of this sub. I've been wanting to learn python for a long time because I've been making computer graphics with blender 3D for over 10 years.


So a little over a year ago I decided to start teaching myself. I started with codeacadamy's python course and then worked on several small personal projects. Such as automating some stuff at work. I then did [Udacitys Intro To Programming Nanodegree.](https://www.udacity.com/course/intro-to-programming-nanodegree--nd000) I overall feel pretty confident with python now, but it's hard to gauge how good you are at something if you don't reference it with other people. So here I am to share!



So I currently work as what is probably best described as a "security guard supervisor" all though it is a lot more than that. I work at a charity with a low income housing complex in which all guests or staff are required to sign in and out of the building. This is necessary because of certain laws requiring it with charities(it's complicated). And also so roll calls can be done with the staff if there is a fire alarm.


Before they simply had a binder with a pen and paper to sign in and out. I asked around and found out that we could print barcodes easily on to our ID cards. So I figured the entire process is pretty low hanging fruit for automation. So I presented my idea to my manager and then later some directors and they approved, since it was practically a free solution, aside from my time on the clock.


I did a back of the envelope calculation and determined this program would save about 400+ man hours a year.


**TL;DR:** So long story short even though I'm a technically a security guard they let me write python and implement this new system. Which I've had a bunch of staff thank me for because the old way was a a lot more of a pain in the ass.

[Here is the program I wrote.](https://github.com/JosiahSwaim/Punch-IN-OUT)

I want to pursue programming as a career now so any advice is appreciated too.

/r/Python
https://redd.it/5lbwu4
Why is Django much less popular?

Development trends shift and change. Once there was no Ruby, then there were RoR developers. I know/suspect Django had more time in the sun some years ago but I can't for the life of me understand how it did not eclipse other frameworks/CMSs.

Someone posted a comment from Zuckerberg where he mentions Python is a good language to learn in the long term. PHP clearly has many problems and everyone acknowledges this so how does Django sit quietly in the background? Python is an immensely better language and I'm almost certain everyone knows this. I would've thought with all the complaints about PHP, more people would've just put it aside.

/r/Python
https://redd.it/5lcfka
How to deploy a multi-tenant django app to AWS?

I have an Django+Postgres app that has a multi-tenant structure and I don't have prior experience deploying this type of app to AWS. I have followed the general Elastic Beanstalk tutorial to deploy a simple app. (https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/) However, I am looking for a solution that allows me to more flexibly create different "sites". Currently, I have learned to create different sites via this tutorial (http://mycodesmells.com/post/django-tutorial-multi-tenant-setup). And I don't have a good idea as of 1. how to deploy this app 2. how I could create different sites after deploying this app.

/r/django
https://redd.it/5lcmtf
Does anyone use Tkinter anymore?

For an upcoming GUI based app, I'm considering between CSharp and Python. Now, since a lot of my backend libraries used for that app are in Python, I'm going to need Python anyways. However, I'm not familiar with any GUI library in Python, though I've heard a bit about Tkinter.

However, the last I heard about that, it seemed to have gathered rust and not being used as much as wxwidgets and others (even Guide Van Rossum seemed to be favoring wxwidgets).

For basic GUI stuff (lists, dropdowns, buttons and maybe a few charts), what library do you suggest?

/r/Python
https://redd.it/5laauy
Help with Flask-login and sqlite3

Hi all,

I'm trying to build a site that has users log in using an sqlite3 database. I've come across flask-login as what I should be using for this. I think I am close to getting it up and running but it seems that when I run the login page, it runs the load_user function twice and the second time load_user is called it returns an empty list which predictably causes some problems (this shows up in the "print result" line in the load_user). ~~I have no idea why the load_user is being called twice~~. It is being called once on the GET and again on the POST, I still don't know why this is happening. I tried debugging it but I've had no luck. I've been trying so many different things that if it is easier just to point me towards a tutorial on how this works, I would appreciate that as well (one that covers databases). I've read the official docs and they were not clear enough for me unfortunately. Here is the code I am using

from flask import Flask, Response, request, redirect, abort, url_for, flash
from flask_login import LoginManager, UserMixin, login_required, login_user, logout_user, current_user
from database import database

app = Flask(__name__)

# config
app.config.update(
DEBUG=True,
SECRET_KEY='secret_xxx'
)

# _________________________________________________________________________________________________________________
# flask-login
login_manager = LoginManager()
login_manager.init_app(app)
login_manager.login_view = "/login"


class User(UserMixin):
def __init__(self, id, name, password):
self.id = unicode(id)
self.name = name
self.password = password
self.authenticated = False

def is_active(self):
# code to check if user is active
return self.is_active()

def is_anonymous(self):
return False

def is_authenticated(self):
return self.authenticated

def is_active(self):
return True

def get_id(self):
return self.id


# __________________________________________________________________________________________________________________


@app.route('/', methods=['GET', 'POST'])
def index():
# Here we use a class of some kind to represent and validate our
return Response ("hello world everyone!")

# some protected url
@app.route('/protected')
@login_required
def protected():
return Response("""
<p>Hello protected!</p>
""")

def sign_in_user(username, password):
user = load_user(username)
if user and user.password == password:
user.authenticated = True
login_user(user)
return user

@app.route("/login", methods=["GET", "POST"], endpoint='login')
def login():
if request.method == 'POST':
username = request.form['username']
password = request.form['password']

user = sign_in_user(username, password)

if user.is_authenticated:
return redirect('protected')
else:
return redirect('login')

else:
return Response('''
<form action="" method="post">
<p><input type=text name=username>
<p><input type=password name=password>
<p><input type=submit value=Login>
</form>
''')


@login_manager.user_loader
def load_user(username):
print "load user called"
mydatabase = database()
result = mydatabase.queryUser(username)
print result
if result == None:
return None
else:
user = User(result[0], result[1], result[2])
return user


if __name__ == "__main__":
app.run()

/r/flask
https://redd.it/5ldblw
Global redirect if a certain criteria isn't set

What would be the best way to redirect a user globally (to a view for example) if that user doesn't fall into a group for example? I cannot for the life of me figure out an elegant way to get this accomplished

/r/django
https://redd.it/5ler7x
What's really up with apps?

Hi /r/django!

So - I have really tried to read and understand this, but I just can't seem to grasp it :-( Maybe someone here could give me an explanation that I can understand xD

When do I choose to split a single project into multiple apps? As an example, right now I'm planning an accounting project that looks like "mint.com". It should contain a part for adding, viewing, categorizeing etc transactions, and one part to create and manage budgets. should these two parts be two apps? Why / Why not? This project also uses the same design layout, both for the transaction logging and the budgets. How is this handled if multiple apps are using the same static files and blocks?

Thanks for help in advance! :-D

/r/django
https://redd.it/5lf31s
Can python pickle files act as a small database system backend?

I'm writing a small app in python and usually I use sqlite as the backend for this sort of thing. However, I'm thinking that rather than iterating through a python list or dict and writing each record to sqlite cursor, why not just pickle the entire object and take it from then on? How feasible is this thing, have you ever tried it?

/r/Python
https://redd.it/5lf5ur
Peewee does not initialize database tables

I'm trying to create a blueprint based wiki. It's based on [these](https://gist.github.com/coleifer/5449d29f25e0d78bc2e8) code snippets. I'm using peewee as ORM and the playhouse.flask_utils package so I can use init_app in the application factory.

The database is created but it's empty.

https://gist.github.com/yhamdoud/dbd9d50e0863eaf6f4b36504dce98582

/r/flask
https://redd.it/5lgbwd
I created a bot that analyzes a user's comments and determines if they are positive or negative.

Just mention my username in a comment along with the username of the person you would like to analyze and /u/opfeels will respond with the analyzation results.

I use the Python Reddit API Wrapper to extract the most recent 100 comments from a user. I take those comments and extract sentences that aren't too long and aren't too short. Each sentence is then analyzed using the NLTK Sentiment Analyzer Vader Module and scored based on how positive, negative, and neutral it is. I then rank the analyzed users in order from most positive to least positive.

you can also use the website: [ruadick.com](http://ruadick.com)

EDIT: fixed bug "<bound method Redditor.index of <Redditor: Redditor object>>" remember the () when calling functions. =)



/r/Python
https://redd.it/5lgot5
2 Scoops of Django

I've seen 2 Scoops of Django recommended a few times, but the most recent version is for Django 1.8. If I'm totally new to Django, will this mess me up?

/r/django
https://redd.it/5lf9sb
Admin page suddenly gone!

Hi again /r/django!

So - I was coding my project and created some models. These models were registered to admin page and all worked as expected. I continued and added some html templates to a different app, and suddenly my admin-page is empty. the header text is gone and the only thing i can see when I go to localhost:8000/admin/ is "Site administration". That's it. The "Authentication and authorization" part is gone, and my other app is gone. However! If I now go to localhost:8000/admin/<myapp>/, the stuff for the app is shown. What have I done wrong? It happened after I added a "global" template folder in the project root, and added the path to this template folder in the TEMPLATES dict.

/r/django
https://redd.it/5lggur