Advertisement
Guest User

Untitled

a guest
Jun 10th, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.17 KB | None | 0 0
  1.  
  2. import datetime
  3. from flask import Flask
  4. from flask_superadmin import Admin, model
  5. from flask_superadmin.model.backends.mongoengine import ModelAdmin
  6.  
  7. try:
  8.     from mongoengine import *
  9. except ImportError:
  10.     exit('You must have mongoengine installed. Install it with the command:\n\t$> easy_install mongoengine')
  11.  
  12.  
  13.  
  14.  
  15. # Create application
  16. app = Flask(__name__)
  17.  
  18. # Create dummy secret key so we can use sessions
  19. app.config['SECRET_KEY'] = '123456790'
  20. #connect('rdps', host='mongodb://localhost/rdps')
  21.  
  22. mongodb_settings = {
  23.     'db':'rdps',
  24.     'host':'localhost',
  25.     'port':27017}
  26.  
  27.  
  28.  
  29. connect(**mongodb_settings)
  30.  
  31. class PHONE(EmbeddedDocument):
  32.     active = BooleanField(label = "Status", default=True)
  33.     number =StringField(label = "Phone Number")
  34.     created_at = DateTimeField(label = "Created At", default=datetime.datetime.now)
  35.  
  36.  
  37.  
  38. class CC(EmbeddedDocument):
  39.     fname = StringField()
  40.     lname = StringField()
  41.     street = StringField()
  42.     city = StringField()
  43.     state = StringField()
  44.     zipcode = IntField()
  45.     active = BooleanField(default=True)
  46.     created_at = DateTimeField(default=datetime.datetime.now)
  47.     cc_number = StringField()
  48.     exp_month = StringField()
  49.     exp_year = StringField()
  50.  
  51.  
  52.  
  53. class RDP(Document):
  54.     label = StringField()
  55.     ip_address = StringField()
  56.     username = StringField(default='Administrator')
  57.     key = StringField()
  58.     password = StringField()
  59.     decrypted_password = StringField()
  60.     created_by = StringField()
  61.     status = StringField()
  62.     state = StringField()
  63.     instance_id = StringField()
  64.     raw_dict = DynamicField()
  65.     phone_number = ListField(EmbeddedDocumentListField(PHONE))
  66.     credit_cards = ListField(EmbeddedDocumentField(CC))
  67.  
  68.  
  69.  
  70.  
  71.  
  72. # Defining MongoEngine Documents
  73.  
  74.  
  75. # Flask views
  76. @app.route('/')
  77. def index():
  78.     return '<a href="/admin/">Click me to get to Admin!</a>'
  79.  
  80.  
  81.  
  82.  
  83.  
  84. if __name__ == '__main__':
  85.     #db = MongoEngine(app)
  86.     admin = Admin(app, 'Simple Models')
  87.     class phoneModel(ModelAdmin):
  88.         list_display = ('number','active','created_at')
  89.         fields = ('number','active','created_at')
  90.  
  91.  
  92.     class creditModel(ModelAdmin):
  93.         list_display = ('cc_number','created_at','fname','lname','street','city','state','active')
  94.         fields = ('cc_number','created_at','fname','lname','street','city','state','active')
  95.  
  96.  
  97.  
  98.     class rdpModel(ModelAdmin):
  99.         list_display = ('label','ip_address','decrypted_password','username','instance_id','credit_cards','phone_number','status')
  100.         fields = ('label','ip_address','decrypted_password','username','instance_id','credit_cards','phone_number','status')
  101.     admin.register(PHONE,phoneModel)
  102.     admin.register(CC,creditModel)
  103.  
  104.  
  105.     admin.register(RDP,admin_class=rdpModel)
  106.  
  107.     admin.register(model=PHONE,admin_class = phoneModel)
  108.     admin.register(model=CC,admin_class=creditModel)
  109.  
  110.     #admin.register(cc,creditModel)
  111.     #admin.register(phone,phoneModel)
  112.  
  113.         # only = ('username',)
  114.     #admin.register(RDP,rdpModel)
  115.     # Register the models
  116.     #admin.register(phone,phoneModel)
  117.  
  118.  
  119.  
  120.     #db.create_all()
  121.     # Start app
  122.     app.debug = True
  123.     app.run('0.0.0.0', 8000)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement