来自我的主管的指示:"我想避免在其中添加任何逻辑models.py
.从现在开始,让我们将其用作访问数据库的类,并将所有逻辑保留在使用模型类的外部类中,或者将它们包装起来."
我觉得这是错误的方式.我认为保持模型逻辑只是为了保持文件小是一个坏主意.如果逻辑在模型中是最好的,那么无论文件大小如何,它都应该去.
那么有一个简单的方法来使用包含?在PHP中,我想向主管建议我们只有models.py
include()来自其他地方的模型类.从概念上讲,这将允许模型具有我们想要的所有逻辑,但通过增加文件数量来减少文件大小(这会导致较少的修订控制问题,如冲突等).
那么,是否有一种从models.py文件中删除模型类的简单方法,但仍然可以使用所有Django工具的模型?或者,对于"大型"models.py文件的一般问题,是否存在完全不同但优雅的解决方案?任何输入将不胜感激.
在R中构建模型时,如何保存模型规范,以便可以在新数据上重复使用?假设我对历史数据进行了逻辑回归,但直到下个月才会有新的观察结果.什么是最好的方法?
我考虑过的事情:
简单地说,我试图了解当您需要在新会话中使用模型时所执行的操作.
提前致谢.
有没有可能有这样的东西?
app/models/
app/models/users/user.rb
app/models/users/education.rb
Run Code Online (Sandbox Code Playgroud)
目标是更好地组织/ app/models文件夹,但不必命名模型.
Rails 3的一个悬而未决的问题是: Rails 3.2.9和子文件夹中的模型.
使用命名空间指定table_name似乎可行(请参阅Rails 4模型子文件夹),但我想在没有命名空间的情况下执行此操作.
namespaces ruby-on-rails models subdirectory ruby-on-rails-4
我有一个Django应用程序,它从Web API读取数据并将其放入数据库中.
有没有办法从模式创建新对象,但如果对象已存在,则防止重复异常?
换句话说,有没有办法保存一个对象,但只要它已经存在就什么都不做?
我的Rails应用程序有一个PostgreSQL数据库.在名为"public"的模式中,存储了主Rails模型表等.我创建了一个"discogs"模式,其中的表名称有时与"public"模式中的名称相同 - 这是其中一个原因.我正在使用模式来组织这个.
如何从我的应用程序中的"discogs"架构设置模型?我将使用太阳黑子让Solr为这些模型编制索引.我不确定你会怎么做.
postgresql ruby-on-rails schema-design models database-schema
如何在Django应用程序中获取有关登录用户的信息?
例如:
我需要知道登录用户的用户名,说明谁发布了评论:
<form id='formulario' method='POST' action=''>
<h2>Publica tu tuit, {{ usuario.username.title }} </h2>
{% csrf_token %}
{{formulario.as_p}}
<p><input type='submit' value='Confirmar' /></p>
</form>
Run Code Online (Sandbox Code Playgroud)
在usuario.username.title
我获取用户名时,但在模板中,我需要从视图中获取该信息.
谢谢.=)
我有非常基本的问题.在L4中,下面的方法开箱即用,所以现在我迷路了.请帮忙.几天前,我开始了一个Laravel 5.0项目.我现在有新鲜,干净的安装.
问题1:当我尝试从数据库中获取任何内容时
$headquote = DB::table('quotation_texts')->find(176);
Run Code Online (Sandbox Code Playgroud)
我明白了:
Class 'App\Http\Controllers\DB' not found
Run Code Online (Sandbox Code Playgroud)
问题2:在克隆User.php模型之前,将类名更改为"Quotation".下面是放在App根文件夹中的文件Quotations.php的内容:
<?php namespace App;
use Illuminate\Database\Eloquent\Model;
class Quotation extends Model {
/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'quotation_texts';
}
Run Code Online (Sandbox Code Playgroud)
任何尝试使用该模型
$headquote = Quotation::find(176);
Run Code Online (Sandbox Code Playgroud)
最终得到这个:
Class 'App\Http\Controllers\Quotation' not found
Run Code Online (Sandbox Code Playgroud)
我有什么想法可以解决这个问题?
我有一个当前调用的函数Models.object.get()
,它返回0或1个模型对象.如果它返回0,我except DoesNotExist
在函数的子句中创建一个新的模型实例.否则,我想更新预先存在的实例中的字段,而不创建新的字段.我原本试图调用.update()
已找到的实例,但.update()
似乎只能在QuerySets上调用.如何在不调用.filter()
和比较长度的情况下更改十几个字段,以了解是否必须创建或更新预先存在的实例?
我在不同的应用程序中有两个模型:modelA和modelB.他们有一对一的关系.有没有办法在保存modelA时django可以自动创建和保存ModelB?
class ModelA(models.Model):
name = models.CharField(max_length=30)
class ModelB(models.Model):
thing = models.OneToOneField(ModelA, primary_key=True)
num_widgets = IntegerField(default=0)
Run Code Online (Sandbox Code Playgroud)
当我保存一个新的ModelA时,我希望它的一个条目能够自动保存在ModelB中.我怎样才能做到这一点?有没有办法在ModelA中指定它?或者这是不可能的,我只需要在视图中创建和保存ModelB?
编辑说这些模型在不同的应用程序中.
我想知道是否有任何关于在Rails应用程序中放置非标准Ruby文件的最佳实践,哪些不适合任何默认目录(controllers
/ models
等).
我说的是控制器/模型等使用的类,但不是任何Rails基类的子类.包含从模型中提取的功能的类,以减少它们的负担.其中一些看起来像模型,但不是AR模型,其中一些看起来更像"服务",有些是介于两者之间或其他东西.
一些随机的例子:
我现在已经有了很多这些,其中一些被添加到lib
最后作为一堆随机类和模块,一些潜入app/models
.我想以某种方式组织这个,但我不知道从哪里开始.
只应该进入AR车型app/models
吗?或者也可以放置任何域或帮助模型?你如何决定某件事是模特?
如果不适合的一切都app
进入lib
?或许我应该添加一些新的自定义子目录app
?什么子目录,以及如何划分自定义类?
你如何在你的项目中处理这个?我知道每个项目都有点不同,但必须有一些相似之处.
models ×10
django ×5
python ×3
namespaces ×2
directory ×1
django-views ×1
laravel ×1
laravel-5 ×1
organization ×1
php ×1
postgresql ×1
r ×1
ruby ×1
subdirectory ×1