models.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #coding:utf-8
  2. #
  3. from django.db import models
  4. from DjangoUeditor.models import UEditorField
  5. from DjangoUeditor.commands import *
  6. def getImagePath(model_instance=None):
  7. if model_instance is None:
  8. return "aaa/"
  9. else:
  10. return "%s/" % model_instance.Name
  11. def getDescImagePath(model_instance=None):
  12. return "aaa/"
  13. class myEventHander(UEditorEventHandler):
  14. def on_selectionchange(self):
  15. return """
  16. function getButton(btnName){
  17. var items=%(editor)s.ui.toolbars[0].items;
  18. for(item in items){
  19. if(items[item].name==btnName){
  20. return items[item];
  21. }
  22. }
  23. }
  24. var btn=getButton("mybtn1");
  25. var selRanage=id_Description.selection.getRange()
  26. btn.setDisabled(selRanage.startOffset == selRanage.endOffset);
  27. """
  28. class myBtn(UEditorButtonCommand):
  29. def onClick(self):
  30. return u"""
  31. alert("爽!");
  32. editor.execCommand(uiName);
  33. """
  34. def onExecuteQueryvalueCommand(self):
  35. return """
  36. return 1;
  37. """
  38. def onExecuteAjaxCommand(self,state):
  39. if state=="success":
  40. return u"""
  41. alert("后面比较爽!"+xhr.responseText);
  42. """
  43. if state=="error":
  44. return u"""
  45. alert("讨厌,摸哪里去了!"+xhr.responseText);
  46. """
  47. class myCombo(UEditorComboCommand):
  48. def onSelect(self):
  49. return u"""
  50. alert("选择了!");
  51. """
  52. def get_items(self):
  53. items=[]
  54. for i in xrange(10):
  55. items.append({
  56. "label":"combo_%s" % i,
  57. "value":i
  58. })
  59. return items
  60. class Blog(models.Model):
  61. Name = models.CharField(u'姓名', max_length=100, blank=True)
  62. Description = UEditorField(u'描述', blank=True, toolbars="full", imagePath="cool/", settings={"a": 1},
  63. command=[myBtn(uiName="mybtn1", icon="d.png", title=u"1摸我", ajax_url="/ajaxcmd/"),
  64. myCombo(uiName="myCombo3",title=u"ccc",initValue="aaa")],
  65. event_handler=myEventHander())
  66. ImagePath = models.CharField(u'图片目录', max_length=100, blank=True)
  67. Content = UEditorField(u'内容', height=200, width=500, default='test', imagePath=getImagePath, toolbars="mini",
  68. filePath='bb/', blank=True, settings={"a": 2})