Steps with explanations to set up a server using:
- virtualenv
- Django
- nginx
- uwsgi
| data:text/html, <style type="text/css">.e{position:absolute;top:0;right:0;bottom:0;left:0;}</style><div class="e" id="editor"></div><script src="http://d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js" type="text/javascript" charset="utf-8"></script><script>var e=ace.edit("editor");e.setTheme("ace/theme/monokai");e.getSession().setMode("ace/mode/ruby");</script> | |
| <!-- | |
| For other language: Instead of `ace/mode/ruby`, Use | |
| Markdown -> `ace/mode/markdown` | |
| Python -> `ace/mode/python` | |
| C/C++ -> `ace/mode/c_cpp` | |
| Javscript -> `ace/mode/javascript` | |
| Java -> `ace/mode/java` | |
| Scala- -> `ace/mode/scala` |
| data:text/html, <style type="text/css">#e{position:absolute;top:0;right:0;bottom:0;left:0;}</style><div id="e"></div><script src="http://d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js" type="text/javascript" charset="utf-8"></script><script>var e=ace.edit("e");e.setTheme("ace/theme/monokai");e.getSession().setMode("ace/mode/ruby");</script> |
| from django.shortcuts import render_to_response as super_render_to_response | |
| def render_to_response(*args, **kwargs): | |
| """ | |
| Here overriding existing render_to_response method and | |
| changing template if other configuration is enabled | |
| """ | |
| config = True | |
| if config: | |
| args = 'config/' + args[0], | |
| return super_render_to_response(*args, **kwargs) |
| Deployment notes for Ubuntu Instance | |
| Nginx, uwsgi, postgres, django, virtualenv stack | |
| * ssh root | |
| root access (need pem) | |
| ssh -i whatever.pem ubuntu@ec2-*-*-*-*.compute-1.amazonaws.com | |
| * secure box | |
| - cut off all ports but 22 and 80 using AWS Management Console | |
| - edit /etc/ssh/sshd_config ensure PasswordAuthentication no |
| from selenium import webdriver | |
| def select_from_chosen(driver, id, value): | |
| chosen = driver.find_element_by_id(id + '_chzn') | |
| results = chosen.find_elements_by_css_selector(".chzn-results li") | |
| found = False | |
| for result in results: | |
| if result.text == value: |
| class _BaseForm(object): | |
| def clean(self): | |
| for field in self.cleaned_data: | |
| if isinstance(self.cleaned_data[field], basestring): | |
| self.cleaned_data[field] = self.cleaned_data[field].strip() | |
| return self.cleaned_data | |
| class BaseModelForm(_BaseForm, forms.ModelForm): |
| models.py | |
| class PurchaseOrder(models.Model): | |
| total_value = models.DecimalField(max_digits=12, decimal_places=2, null=True, blank=True) | |
| def purchase_order_post_save_handler(sender, instance, **kwargs): | |
| project_po_value_update_thread = accounting.threads.ProjectPoValueUpdateThread(instance) | |
| project_po_value_update_thread.start() | |
| post_save.connect(purchase_order_post_save_handler, sender=PurchaseOrder) |
| d = datetime(2009, 8, 31, 22, 30, 30) | |
| toUTCc(d) | |
| def toUTCc(d): | |
| tz = timezone('US/Pacific') | |
| return tz.normalize(tz.localize(d)).astimezone(pytz.utc) | |
| print "Test: ", datetime.datetime.utcnow(), " = ", toUTC(datetime.datetime.now()) |
| #signals.py | |
| from django.dispatch import Signal | |
| user_login = Signal(providing_args=["request", "user"]) | |
| #views.py | |
| from foo import signals |