Adding a CMS to Your Pyramid Web App Transcripts
Chapter: A tour of our demo application
Lecture: Getting the app up and running
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
Before we move on from this topic I want to show you how to get this code up and running because we're gonna have different versions of this Web app
0:08
and getting it from GitHub and then getting it configured so it'll run correctly is something you have to do a lot in this course Let's do that
0:17
Now we're over here in the GitHub repository. I'm gonna copy the base URL from the top for a sec. I'm going to need that.
0:22
Now if we go over here and see each chapter has starter code. And basically, the way it works is this is the code I just showed you.
0:30
Over here, this is the code that we're gonna have when we're finished with chapter four.
0:35
Right now it says starter code. It's a copy of the previous one. But that's because we're on Chapter 3.
0:39
We're going to Chapter 4. At the end of Chapter 4 this will be the final version of Chapter 4.
0:44
Then there'll be a 5, which will be the final version of Chapter 5 and so on.
0:47
So, depending where you wanna or to jump around and the course you can seek through here.
0:52
So what we're gonna do? You wanna clone this somewhere and I'm just gonna put it on the desktop. I don't like to keep stuff on the desktop.
0:57
You can see it's nice and clean, but just for this example. We're going to 'git clone' this and it's a huge long name
1:03
So I'll just say 'CMS Course' or something like that, All right and then we can go into our CMS course. Here.
1:11
And here, well Surprise, the same structure. Now notice in each one of these, there's a PyPI folder. That's the top level project folder.
1:18
So this is the thing you want to work with and I have this cool little extension that will let me just open command prompt here into this folder.
1:24
So what we want to make sure is, when we look that this 'setup.py' is where we're working and
1:31
we're in the PyPI folder it has that And I point that out because there's sub PyPI folders as well. That's just how it works with this package.
1:38
So what we're gonna do is we're gonna come over here and create a virtual environment, like so. Then we're going to activate it
1:48
Now, on Linux and macOS, you say 'dot' and then 'bin/activate' On Windows, you would just say 'venv /script/activate.bat'.
1:57
Basically, they avoid the dot Okay, so now we're close to getting it to run. There's a couple of things we have to do for Pyramid to make it run.
2:06
Now, Pyramid is what's called a Python package, and that's how it's distributed.
2:11
So we need to set it up so that it will actually know about itself so that it will run here and
2:16
the way that we're gonna do that is we're gonna run 'Python setup'. We're gonna run the setup.py, and want to give it the 'develop' command.
2:23
What that's gonna do is going to set it up and install the dependencies that we need, such as Pyramid and SQLAlchemy and so on.
2:31
Alright, it looks like that's all working. We could do a quick 'pip list' and
2:36
you can see all the things that looks like we're needing, chameleon, pyramid and so on are here.
2:41
And also PyPI is installed locally right there. That just means it knows about itself basically.
2:47
Our pip is out of date, but that's just the way these things work. We can upgrade it, but not worth bothering about now.
2:54
Okay, so we've got it set up. We have our virtual environment active, and now we just want to see if we can run it
3:01
When I ran 'Python setup.py develop' it installed Pyramid. Pyramid comes with a command called 'pserve'.
3:07
Like that, and what we do is we give it the '.ini' the configuration file that we want to run and we want to run, develop.
3:15
In production and out on the Internet, we would run production Here, we're working on it in development, so hence development.
3:21
So let's hit it with this. Now, sometimes you get this weird 'This is not found'. Watch this. This is annoying.
3:28
If we deactivate our virtual environment and then we reactivated and then we try this again
3:36
Well, guess what it's found. Well, thanks Python for that inconsistency,
3:41
but I'm kind of glad I ran into because if you run into that problem, you could see it's super easy to fix.
3:45
And now, let's just copy this and make sure it's running over here. Here we go, Up and running. Everything's working. Great.
3:52
The final thing, maybe you want to see how you get this into PyCharm.
3:58
We're gonna go over here and take the folder that contains a 'setup.py' and drop that into PyCharm like so.
4:04
On Windows and Linux, you have to say file, open directory, macOS, you can drop it on the middle dock icon there
4:12
Notice it's already found PyPI, So that's good. We should be able to run something And if we go down here, we can find our code again.
4:21
Yeah, that's good. One quick little trick we can do to make things work better in our HTML files
4:27
We can go over here and say 'mark directory as resource route'
4:31
So when you say, like '/static', it knows to look at this folder and it'll autocomplete, like out through there. That's very nice
4:37
Okay, so this looks pretty much ready to go. Let's double check that it's using our virtual environment.
4:44
And yeah, it looks like that is the case. Yeah, that's the one we created. Cool Cool.
4:51
It doesn't always work, and if it doesn't work you can go to the preferences or settings on the other OS's
4:57
Go to the project, project interpreter, should be listed over here. If it's not, you can 'Add', then click 'Add Existing' and probably find it for you.
5:07
But it worked for us, so we don't need to do that. Click 'go' running just like before There we go. We have it working in PyCharm as well
5:15
All right, so that's basically the process that you need to go through each time. One quick note is, don't reuse these virtual environments
5:22
This is Chapter 3, you want one for the Chapter 3, one for Chapter 4, one for Chapter 5.
5:27
because when you install the project itself as the package, it points over to that location where it came from
5:35
So you don't wanna have it use the old code or part of the old code and part of the new code.
5:40
It's very messy, so just make sure that you always use a new virtual environment for every chapter
5:44
and just go through that process and double check that PyCharm, if you're using PyCharm, is discovering it correctly
5:50
You can quickly come over here in the terminal and see that it has one active And ask 'which Python'.
5:55
On windows you can type 'where Python' and it will show you which one that's using. Looks like this one is all set and we're ready to go.
6:03
You should be ready to start building from this demo app.