You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

model.php.twig 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. {{ "<?php" }}
  2. /**
  3. * AUTO GENERATED BY LUTICATE GENERATOR
  4. * ANY CHANGES WILL BE OVERWRITTEN
  5. * DO NOT DIRECTLY USE THIS FILE
  6. * USE {{ model_user_name.camel_upper }}.php
  7. * TO MAKE YOUR CHANGES AND DATABASE ACCESS
  8. */
  9. namespace {{ models_namespace.as_it }};
  10. use Luticate\Utils\LuModel;
  11. use {{ dbo_namespace.as_it }}\{{ dbo_name.camel_upper }};
  12. class {{ model_name.camel_upper }} extends LuModel
  13. {
  14. function __construct()
  15. {
  16. parent::__construct();
  17. $this->timestamps = false;
  18. }
  19. public function toDbo()
  20. {
  21. $dbo = new {{ dbo_name.camel_upper }}();
  22. {% for column in columns %}
  23. $dbo->set{{ column.name.camel_upper }}($this->{{ column.name.as_it }});
  24. {% endfor %}
  25. return $dbo;
  26. }
  27. /**
  28. * @param $dbo {{ dbo_name.camel_upper }}
  29. * @param $model LuModel|null
  30. * @return {{ model_user_name.camel_upper }}
  31. */
  32. public function fromDbo($dbo, $model = null)
  33. {
  34. if (is_null($model))
  35. $model = new {{ model_user_name.camel_upper }}();
  36. {% for column in columns %}
  37. $model->{{ column.name.as_it }} = $dbo->get{{ column.name.camel_upper }}();
  38. {% endfor %}
  39. return $model;
  40. }
  41. }