Timur
пишет access denied for user in localhost
Dmitriy
I have two tables (Users and UserRole)
Timur
Dmitriy
Ну прочитай же.
Dmitriy
У меня при таком, лишних таблиц не создается. Java, SQL Server
Dmitriy
В смысле пользователи и роли ?
Евгений
Столкнулся с самой большой проблемой при проектировании приложения. Как назвать модель (и таблицу соответственно)? :) Предположим есть Организация. И есть возможность предложить добавить организацию. Как назвать моель для таких предложений/заявок?) Пихать в общую таблицу организаций с другим статусом не вариант в моём случае
Dmitriy
Illia
Теперь давай добавим для каждой роли описание
Dmitriy
Ты действительно думаешь, что это сложно ?
Dmitriy
И главное что сейчас, из за неумеющегу гуглить я полезу в проект ?
Dmitriy
http://pogugli.com/?323736
Nik
Nik
у тебя тут не м2м если чо
Dmitriy
У меня там что угодно может быть.
Timur
ролей
Dmitriy
ой...
Dmitriy
что за описания ?
Timur
А в целом это возможно с двумя таблицами. В UserRole будет просто user_id, role (не role_id)
Dmitriy
Я могу сколько угодно ролей назначить
Timur
Не спорю
Dmitriy
ну сколько в стрингу влезет
Timur
То есть?
Dmitriy
могу даже больше, если сурово извратиться )))
Timur
Типа:
"admin, editor, manager"?
Dmitriy
С Filestream буду в поле брать из файла
Timur
Вот такое значение в одной записи в users?
Dmitriy
но это извращение чисто теоретическое
Timur
Типа
id: 5
role: "admin,manager"
Timur
?
Illia
Illia
по всем канонам нормализации
Dmitriy
вроде такого
Timur
Теоретическое извращения тут нет смысла обсуждать
Illia
вроде такого
это нарушение 1нф, иди свои ссылки перечитай
Dmitriy
Как с вами тяжело...
Illia
Как с вами тяжело...
Потому что ты начал речь о "теоретических извращениях", а ссылки кидал на информацию про нормализацию
Dmitriy
на теоретических извращениях я вроде закончил
Dmitriy
или нет ?
Illia
или нет ?
окей, вернёмся к вопросу
есть пользователи (name, email, status), если роли (name, description)
как уместить в 2 таблицы?
Dmitriy
Выше уже написали
Illia
Stanislav
В общем виде есть такие модели (структура передана в сути):
`
/
* Structure: id | transaction_id | code
*/
class SmsConfirmation extends Model
{
public function transaction()
{
return $this->belongsTo(Transaction::class, 'transaction_id', 'id');
}
}
/
* Structure: id | wallet_from | wallet_to
*/
class Transaction extends Model
{
public function wallet()
{
return $this->belongsTo(Wallet::class, 'wallet_from', 'id');
}
public function smsConfirmation()
{
return $this->hasMany(SmsConfirmation::class, 'transaction_id', 'id');
}
}
/**
* Structure: id | phone
*/
class Wallet extends Model
{
public function transactions()
{
return $this->hasMany(Transaction::class, 'wallet_from', 'id');
}
}
`
Пытаюсь вызвать SmsConfirmation::first()->transaction->wallet->phone; , получаю: "message": "Trying to get property 'phone' of non-object",
В чем может быть проблема?
Alex
что мы выиграем еслии уберем 3-ю таблицу? бессмысленное обсуждение. тогда на монго переходите
Illia
Daniil 👾
Daniil 👾
А я ссылку на что скинул?)
Daniil 👾
A "one-to-many" relationship is used to define relationships where a single model owns any amount of other models.
Maksim (Ellrion)
Не дай бог с таким на проекте встретиться)
Illia
Daniil 👾
Перевожу - одна модель имеет связь с множеством других моделей.
Daniil 👾
Собственно отношение так и называется - Один ко многим
Illia
Где тут один ко многим?
Daniil 👾
Что мешает прикрутить третью таблицу и не парить себе мозг?
Maksim (Ellrion)
Я могу сколько угодно ролей назначить
А ещё ты можешь проебаться из за ограничения по длине; ещё искать пользователей с ролью определенной ты будешь через неэффективный лайк. А если нужно сразу с двумя ролями то вообще туши свет. А ещё ты пошлешь нафиг стондартный релейшен лары и все его возможности.
mr.
mr.
Они наоборот для нормализации и придуманы
mr.
Даже в моей шараге такие основы проектирования СУБД были
mr.
И как вообще м:м сделать без пивот если array типа нету в СУБД? Лол
Illia
Illia
Illia
Illia
😂
Daniil 👾
можно дико извратиться с json колонками :D
Illia
локально, но поймёшь
Daniil 👾
бесконечно длинными для role
Maksim (Ellrion)
Я кстати ещё понял бы если бы таблицу ролей вообще не делали и колонка была джейсон
Nik
Stanislav
Народ, нид хелп ))) не работает, и не понятно, почему
В общем виде есть такие модели (структура передана в сути):
/**
* Structure: id | transaction_id | code
*/
class SmsConfirmation extends Model
{
public function transaction()
{
return $this->belongsTo(Transaction::class, 'transaction_id', 'id');
}
}
/**
* Structure: id | wallet_from | wallet_to
*/
class Transaction extends Model
{
public function wallet()
{
return $this->belongsTo(Wallet::class, 'wallet_from', 'id');
}
public function smsConfirmation()
{
return $this->hasMany(SmsConfirmation::class, 'transaction_id', 'id');
}
}
/**
* Structure: id | phone
*/
class Wallet extends Model
{
public function transactions()
{
return $this->hasMany(Transaction::class, 'wallet_from', 'id');
}
}
Пытаюсь вызвать SmsConfirmation::first()->transaction->wallet->phone; , получаю: "message": "Trying to get property 'phone' of non-object",
В чем может быть проблема?