#model
class Links(models.Model):
type_rec = models.CharField(max_length=50)
ttl = models.CharField(max_length=50)
ttl_lnk = models.CharField(max_length=50)
#view
def lnk(request, key):
result = Links.objects.filter(type_rec=key)
return render(request, 'index/index.html', {'key': result})
function load(callback) {
usersRef.on('child_added', snap => {
let object = {
data: snap.val().data,
user_id: snap.val().user_id,
production: snap.val().production,
}
db.push(object);
});
callback(db);
}
=====================================
componentDidMount(){
load((db) => {
this.setState({production: db[0].data});
});
}
const lists = document.getElementsByClassName('list');
const items = document.getElementsByClassName('list-item');
for (let i = 0; i < items.length; i++) {
items[i].setAttribute('id', i);
items[i].setAttribute('draggable', 'true');
items[i].addEventListener('dragstart', dragStart);
items[i].addEventListener('drag', drag);
}
function dragStart(event) {
event.dataTransfer.setData('dragObjectId', 'asd');
}
function drag(event) {
event.target.style.opacity = 0;
}
Если у тебя есть список чего-то, то у тебя есть два пути, ты можешь оставить данные как есть в памяти, либо скопировать их в новую область. Но чтоб твое изменение увидели, ты должен вернуть новое состояние, это то, что ты возвращаешь из редюсера при изменениях, а не данные, которыми ты манипулируешь
Because we want to update a specific item in the array without resorting to mutations, we have to create a new array with the same items except the item at the index. If you find yourself often writing such operations, it's a good idea to use a helper like immutability-helper, updeep, or even a library like Immutable that has native support for deep updates
const copyObj = [...state.obj]
не канает.