Where to creat forms an models
django apps are meant to be standalone.
So models and forms related to an app should be within that app.
For example, you have a website in which you also have a blog.
Now you have a seperate app for that blog.  
So models related to blog (say Blog) should recide in blog/models.py and forms related to bog (say BlogCreateForm) should recide in blog/forms.py
This is the general convention that is followed. However in many cases it not really possibe to seperate a part of project as 'standalone'. 
Unnecessirly splitting project in apps may actually make it more difficult
For example , if you are making something for a school, 
then it makes sense to create 2 apps teachers and students ONLY IF, you have many urls starting with something like
www.example.com/teachers/ and www.example.com/students/ 
otherwise it makes more sense to just put the teacher and student model in the registration app where models like user, profile etc  recide.
But as @Toby mentioned, it entirely depends on the structure of your project and your use case
Is it a best way to create only one file of forms and one files of models in the folder of the project django? 
Create for each application one forms.py and one models.py is too long.